这是个搜索框的方法,在不断输入的过程中会不断调用过滤出结果,因为方法最后把过滤数据赋值给原数据了,导致在回删的时候找不到结果,请问有好的办法吗?
<el-select
v-model="stepsModel[index].processIdMaterial"
clearable
filterable
:filter-method="(val:any)=>{handleFilter(val,index)}"
>
<el-option
v-for="(item2) in stepsProductList[index]"
:key="item2.materialCode"
:label="item2.materialName"
:value="item2.materialCode"
/>
</el-select>
const handleFilter = (e:string, index:number) => {
const res:any[] = []
stepsProductList.value[index].forEach((i:any) => {
if (i.materialSpec.indexOf(e) > -1) {
res.push(i)
}
})
stepsProductList.value[index] = res
}
你得先用一个数据保存原有的没筛选的数组吧,不然你删选之后就找不到所有数据了