Skip to content

CommonSelect公共选择器

公共选择器支持select selectV2 treeSelect。

基础使用

loading

组件类型

loading

多选

loading

多选添加分隔符

loading

获取请求数据

下面我们模拟一个请求
在表单或者列表场景中会重复发送请求,可以使用组件库hooks asyncCache 合并请求只发送一次

loading

请求结果字段对照

如果请求结果不是value label形式 则使用labelField valueField 获取

loading

结果的格式转化

比如接口给出的数据是字符串 我们业务中存的是数字 可能就匹配不上 使用valueType

loading

如果请求格式不一致或者value label等需要拼接

使用parseData当然这个可以全局注册一下 开发中如果不满足 在config中复写下

loading

字典

首先需要在main.ts中全局注册下 这个项目的字典数据获取方法 注入这个getDictOptions参数 函数返回一个Promise 下面我们模拟下

loading

请求参数/过滤options

在api情况下是给传入的函数添加参数 并且query返回的数据变化会触发用新参数请求

loading
loading
loading

等待全部query参数都有值时 获取数据

loading

自动选中

当数据只有一条时自动选中 只有api跟dict 才有效

loading

追加选项

追加选项 内部会去重

loading

排序

loading

CommonSelect 属性 (Props)

属性说明类型默认值
api请求 API 接口方法Function-
dict字典名称,用于从字典中获取选项string | string[]-
query请求参数配置方法Function-
valueField值字段的对照字段名string-
labelField文本字段的对照字段名string-
parseData转化请求结果的方法Function-
autoSelectFirst只有一条数据时是否自动选中booleanfalse
multiple是否为多选booleanfalse
needAllQueryParams是否需要传递所有查询参数booleanfalse
appendOptions追加的选项列表或方法Record<any, any>[] | Function-
valueType值类型,支持 'string', 'String', 'int', 'Int''string' | 'String' | 'int' | 'Int'-
bindOptions绑定的选项列表Record<any, any>[]-
ignoreByLabel忽略的标签列表string[]-
componentType组件类型,支持 'ElSelectV2', 'ElSelect', 'ElTreeSelect''ElSelectV2' | 'ElSelect' | 'ElTreeSelect''ElSelect'
joinSplit多选时结果合并的拼接符string
orderBy排序字段名string-
orderType排序方式,支持 'asc''desc''asc' | 'desc'-
getDictOptions获取字典选项的方法Function-