Coder Social home page Coder Social logo

veedrin / qing Goto Github PK

View Code? Open in Web Editor NEW
71.0 2.0 18.0 352 KB

🍧一个UI组件库。包括 { 日期选择器组件 } { 时间选择器组件 } { 分页组件 } { 树组件 } { 级联选择器组件 } { 表单组件 } 等,ES6语法编写,原生模块化

License: MIT License

CSS 16.47% JavaScript 82.37% HTML 1.16%
javascript library ui datepicker timepicker paginator tree cascade

qing's Introduction

logo

QingUI

PRs


QingUI是一个UI组件库
目前拥有的组件:DatePicker, TimePicker, Paginator, Tree, Cascader, Checkbox, Radio, Switch, InputNumber, Input
ES6语法编写,无依赖
原生模块化,Chrome63以上支持,请开启本地服务器预览效果
采用CSS变量配置样式
相信原生的力量

DatePicker

img failed

DatePicker是一个日期选择器组件

挂载

<div id="date-picker"></div>

启动

import {DatePicker} from './qing.js';

new DatePicker({
    id: 'date-picker',
    yearRange: [2000, 2020],
    lang: 'zh',
    callback: callback,
});

API

参数 类型 默认值 说明
id string "date-picker" 挂载标签的id
yearRange array [1970, 2050] 年份选择的范围,必须包含当年
lang string "zh" 中文是"zh",英文是"en"
callback function(date: string) () => {} 回调,{param}选择的年月日,格式为"YYYY-MM-DD"

TimePicker

img failed

TimePicker是一个时间选择器组件

挂载

<div id="time-picker"></div>

启动

import {TimePicker} from './qing.js';

new TimePicker({
    id: 'time-picker',
    lang: 'zh',
    callback: callback,
});

API

参数 类型 默认值 说明
id string "time-picker" 挂载标签的id
lang string "zh" 中文是"zh",英文是"en"
callback function(time: string) () => {} 回调,{param}选择的时分秒,格式为"HH : MM : SS"

Paginator

img failed

Paginator是一个分页组件

挂载

<div id="paginator"></div>

启动

import {Paginator} from './qing.js';

new Paginator({
    id: 'paginator',
    pageCount: 33,
    showSizeChanger: false,
    showQuickJumper: false,
    lang: 'zh',
    callback: callback,
});

API

参数 类型 默认值 说明
id string "paginator" 挂载标签的id
pageCount number 1 页数
showSizeChanger boolean false 是否显示调整每页条数的下拉框
pageSizeOptions array [10, 20, 30] 每页条数选项,showSizeChanger为true时生效
pageSize number 10 每页条数
total number - 总条数,total不能超过pageCount和pageSize的乘积
showQuickJumper boolean false 是否显示快速跳转至某页的输入框
lang string "zh" 中文是"zh",英文是"en"
callback function(position: number, pageSize: number) () => {} 回调,{param}当前页,{param}每页条数

Tree

img failed

Tree是一个树结构组件

挂载

<div id="tree"></div>

启动

import {Tree} from './qing.js';

new Tree({
    id: 'tree',
    data: [
        {
            label: '霍思燕',
            sub: [
                {
                    label: '江疏影',
                },
                {
                    label: '倪妮',
                },
            ],
        },
        {
            label: '高圆圆',
            sub: [
                {
                    label: '张雨绮',
                },
                {
                    label: '宋佳',
                },
            ],
        },
    ],
    checkable: true,
    indent: 40,
    expand: 'first',
    callback: callback,
});

API

参数 类型 默认值 说明
id string "tree" 挂载标签的id
data array [] 要渲染的树形数据
checkable boolean true 是否显示checkbox,即是否可选中
indent number 40 每一级的缩进距离,单位为px
expand string "none" 初始伸展方式,三个可选项,"none"是全部不展开,"all"是全部展开,"first"是第一节展开
callback function(data: array) () => {} 回调,{param}选中后的数据,checkable为true时生效

Cascader

img failed

Cascader是一个级联选择器组件

挂载

<div id="cascader"></div>

启动

import {Cascader} from './qing.js';

new Cascader({
    id: 'cascader',
    data: [
        {
            label: '霍思燕',
            sub: [
                {
                    label: '江疏影',
                },
                {
                    label: '倪妮',
                },
            ],
        },
        {
            label: '高圆圆',
            sub: [
                {
                    label: '张雨绮',
                },
                {
                    label: '宋佳',
                },
            ],
        },
    ],
    searchable: true,
    callback: callback,
});

API

参数 类型 默认值 说明
id string "cascader" 挂载标签的id
data array [] 要渲染的树形数据
searchable boolean false 是否显示搜索框,即是否可搜索
debounce number 300 input事件的输入防抖
trigger string "click" 触发下一级的方式,两个可选项,"click"是鼠标点击触发,"hover"是鼠标悬停触发
seperator string " / " 分隔符
callback function(path: string) () => {} 回调,{param}选中的路径

Checkbox

img failed

Checkbox是一个多选框组件

挂载

<div class="checkbox"></div>
<div class="checkbox"></div>
<div class="checkbox"></div>

启动

import {Checkbox} from './qing.js';

new Checkbox({
    classes: 'checkbox',
    indeterminateIndex: 0,
    data: [
        {
            checked: false,
            disabled: false,
        },
        {
            checked: false,
            disabled: false,
        },
        {
            checked: false,
            disabled: false,
        },
    ],
    callback: callback,
});

API

参数 类型 默认值 说明
classes string "checkbox" 挂载标签的class
indeterminateIndex number - 全选全不选checkbox的索引
data array [] 渲染checked或者disabled的数据
callback function(data: array, i: number) () => {} 回调,{param}选中后的数据,{param}选中checkbox的索引,如果选中indeterminate,返回"indeterminate"

Radio

img failed

Radio是一个单选框组件

挂载

<div class="radio"></div>
<div class="radio"></div>
<div class="radio"></div>

启动

import {Radio} from './qing.js';

new Radio({
    classes: 'radio',
    data: [
        {
            checked: false,
            disabled: false,
        },
        {
            checked: false,
            disabled: false,
        },
        {
            checked: false,
            disabled: false,
        },
    ],
    callback: callback,
});

API

参数 类型 默认值 说明
classes string "radio" 挂载标签的class
data array [] 渲染checked或者disabled的数据
callback function(data: array, i: number) () => {} 回调,{param}选中后的数据,{param}选中radio的索引

Switch

img failed

Switch是一个开关组件

挂载

<div id="switch"></div>

启动

import {Switch} from './qing.js';

new Switch({
    id: 'switch',
    checked: false,
    disabled: false,
    size: 'default',
    callback: callback,
});

API

参数 类型 默认值 说明
id string "switch" 挂载标签的id
checked boolean false 初始是否选中
disabled boolean false 是否置灰
size string "default" 开关尺寸,两个可选项,默认"default",小尺寸"small"
callback function(checked: boolean) () => {} 回调,{param}是否选中

InputNumber

img failed

InputNumber是一个计数器组件

挂载

<div id="input-number"></div>

启动

import {InputNumber} from './qing.js';

new InputNumber({
    id: 'input-number',
    checked: false,
    disabled: false,
    size: 'default',
    callback: callback,
});

API

参数 类型 默认值 说明
id string "input-number" 挂载标签的id
initValue number 1 初始数值
step number 1 步长
min number - 允许的最小值,要考虑到初始值和步长
max number - 允许的最大值,要考虑到初始值和步长
size string "default" 计数器尺寸,两个可选项,默认"default",小尺寸"small"
disabled boolean false 是否置灰
callback function(value: number, oldValue: number, type: string) () => {} 回调,{param}当前值,{param}上一次的值,{param}计数类型,有"decrease","increase","input"

License

MIT

qing's People

Contributors

veedrin avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

qing's Issues

callback 怎么用的?

new DatePicker({
            id: 'date-picker',
            yearRange: [2000, 2020],
            lang: 'zh',
            callback: () => {return "2013-13-13"}
        });

这个callback应该是设置日期的选择时间 但是不造怎么用

多选组件有,es5版本的吗?

大佬,多选组件有,es5版本的吗?因为项目不支持es6. 基本用的jquery。
image
还有这个布局怎么写啊,想不出来了,帮我解答一下,谢谢了

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.