- 
                    布局
 - 
                    表单
 - 
                    通知
 - 
                    导航
 - 
                    其它
 
下拉选择 KLSelect
基本形式
  | 
  | 
表单项
在表单中使用
  | 
selected, value和key
selected表示当前选择项,value表示当前选择值。key表示数据项的键,默认为'id'。
它们三者的关系如下:selected[key] == value。其中selected和value是联动的,当一项变化时会同时改变另一项。
  | 
  | 
禁用某一项,禁用组件
tip表示禁用某一项时给出的提示,不给则无提示,placement表示给出提示的方向,具体参考文字提示组件Tooltip
  | 
  | 
分隔线
  | 
  | 
设置或取消默认项
如果placeholder为空,刚开始将会自动选中第一项。
  | 
  | 
远程数据
  | 
  | 
数据绑定
如果同时设置selected和value的初始化值,selected的值会将value覆盖。
  | 
  | 
事件
请打开浏览器的控制台查看结果。
  | 
  | 
带清空按钮
  | 
  | 
综合示例
  | 
  | 
API
KLSelect
KLSelect
| Param | Type | Default | Description | 
|---|---|---|---|
| [options.data] | object | 
= 绑定属性 | |
| [options.data.source] | Array.<object> | 
[] | 
<=> 数据源 | 
| [options.data.source[].name] | string | 
=> 每项的内容 | |
| [options.data.source[].disabled] | boolean | 
false | 
=> 禁用此项 | 
| [options.data.source[].tip] | string | 
=> 禁用此项显示的提示,如果没有则不显示 | |
| [options.data.source[].placement] | string | 
=> 禁用此项显示提示的方向,默认下方 | |
| [options.data.filter] | function | 
=> 如果传了该参数会对 source 数组的每一项 item 进行 filter(item) 返回 true 则显示,否则不显示 | |
| [options.data.source[].divider] | boolean | 
false | 
=> 设置此项为分隔线 | 
| [options.data.selected] | object | 
<=> 当前选择项 | |
| [options.data.value] | string/number | 
<=> 当前选择值 | |
| [options.data.key] | string | 
"id" | 
=> 数据项的键 | 
| [options.data.nameKey] | string | 
"name" | 
=> 数据项的name键 | 
| [options.data.placeholder] | string | 
"请选择" | 
=> 默认项的文字,如果placeholder为空并且没有选择项时,将会自动选中第一项。 | 
| [options.data.hideTip] | boolean | 
false | 
=> 是否显示校验错误信息 | 
| [options.data.clearable] | string | 
false | 
=> 单选时是否有清空按钮 | 
| [options.data.required] | boolean | 
false | 
=> 是否必填 | 
| [options.data.readonly] | boolean | 
false | 
=> 是否只读 | 
| [options.data.disabled] | boolean | 
false | 
=> 是否禁用 | 
| [options.data.visible] | boolean | 
true | 
=> 是否显示 | 
| [options.data.class] | string | 
=> 补充class | |
| [options.service] | object | 
@=> 数据服务 | |
| [options.data.canSearch] | boolean | 
false | 
=> 是否可搜索 | 
| [options.data.isCaseSensitive] | boolean | 
false | 
=> 是否区分大小写 | 
| [options.data.noMatchText] | boolean | 
无匹配项 | 
=> 搜索无结果文案 | 
| [options.data.delaySearch] | Number | 
300 | 
=> 异步搜索的延迟 | 
| [options.data.maxShowCount] | Number | 
1000 | 
=> 最大展示条数 | 
| [options.data.multiple] | boolean | 
false | 
=> 是否多选 | 
| [options.data.separator] | string | 
"," | 
=> 多选value分隔符 | 
| [options.data.selectedClose] | boolean | 
true | 
=> 多选时选中非全部和请选择项时 是否关闭 | 
| [options.data.canSelectAll] | boolean | 
true | 
=> 是否有全选 | 
| [options.data.size] | string | 
=> 组件大小, sm/md/lg | |
| [options.data.width] | number | 
=> 组件宽度 | |
| [options.data.limit] | number | 
=> 在选项过多的时候可能会有性能问题,limit 用来限制显示的数量 | 
change 选择项改变时触发Event
| Name | Type | Description | 
|---|---|---|
| sender | object | 
事件发送对象 | 
| selected | object | 
改变后的选择项 | 
| key | string | 
数据项的键 | 
| value | string/number | 
改变后的选择值 | 
select 选择某一项时触发Event
| Name | Type | Description | 
|---|---|---|
| sender | object | 
事件发送对象 | 
| selected | object | 
当前选择项 | 
      想让文档更完善?
      
        来 GitHub 提个 PR 吧!