@icedesign/multi-selector
v0.1.1-1
Published
多选组件
Readme
MultiSelector
通用的多选组件
API
| 参数名 | 说明 | 必填 | 类型 | 默认值 | 备注 | | ---------- | ------------- | ---- | ---------- | ----------- | ---- | | size | 组件尺寸 | 否 | string | medium | small/medium/large | | disabled | value 受控 | 否 | array | | | | width | 组件宽度 | 否 | number | | | | placeholder| placeholder | 否 | string | | | |defaultValue|默认 value(不受控)| 否 | array | | | | value | value 受控 | 否 | array | | | |defaultDataSource|默认 dataSource|否|array| | | | onChange | 回调 | 否 | func(value, actionType, dataSource) | | 与Select一致 | | fetchData | 搜索获取数据 | 是 | promise | | | | itemRender | 自定义渲染下拉项 | 否 | func(item) | |与Select一致 | | fillProps | 自定义选中态的字符串| 否 | string | label |与Select一致 | | min | 最少个数 | 否 | number | | | | max | 最大个数 | 否 | number | | |
参数说明
fetchData
方法必须返回一个 promise 或者 async,需要按照约定返回固定的数据格式:
<MultiSelector
fetchData={async ({ inputValue }) => {
const response = await axios({
url: '',
params: {
keyword: inputValue
}
});
// dataSource 的单个 item 必须有 value&label 属性
return response.data.data.dataSource || [];
}}
/>defaultDataSource
回填 value 或者设置了 defaultValue 的场景必须设置该属性,否则无法渲染选中的 tag
