el-select自定义筛选方法filter-method
- 添加filterable属性即可筛选,默认筛选方式是将 选项与输入值整个对比
<el-select
v-model="form.principal"
filterable
:filter-method="PinyinMatchFun" //自定义筛选方式
>
<el-option
v-for="(item, index) in querylargeItemsFiltered"
:key="index"
:value="item.id"
:label="item.name"
style="width: 200px"
></el-option>
</el-select>
querylargeItemsFiltered:[]
PinyinMatchFun(inptStr) {
if (inptStr) {
// this.deptlist 原数据
this.querylargeItemsFiltered = this.deptlist.filter((res) => {
let itemFilter = res.deptName;
let itemPinYincode = res.pinCode;
return (
itemFilter.includes(inptStr) ||
itemPinYincode.toLowerCase().includes(inptStr)
);
});
} else {
this.querylargeItemsFiltered = this.deptlist;
}
},