antd-Vue 3.X版本 a-select使用 实现下拉展示数据处理、搜索、自定义参数、分页的需求
一。获取的数据可能不是 value、label 这种出参,所以使用 :field-names="{ label: 'name', value: 'id', options: 'children' }" 自定义参数,在使用过程中显示的label 并不单纯的是name可能是name拼接别的参数名,这时候的写法是
<a-select v-model:value="value" style="width: 120px" :field-names="{ label: 'name', value: 'id', options: 'children' }" > <a-select-option v-for="item in list" :key="item.id" :value="item.id">{{item.name+item.number}}</a-select-option> </a-select>
这样写我本地不显示下拉的数据,没找到为啥 初步判断是label数据有问题
修改之后的写发如下,解决了问题:
<a-select v-model:value="value" style="width: 120px" :options="list.map(item=>{ return {id:item.id,name:item.id+item.number}})" :field-names="{ label: 'name', value: 'id', options: 'children' }" > </a-select>
前端添加搜索添加两个设置:
show-search //添加搜索
optionFilterProp='name' //搜索的内容
二。实现搜索、下拉分页的功能