为了账号安全,请及时绑定邮箱和手机立即绑定

vue+element项目,select组件搜索改变下拉部分选项之后,再次搜索出现键盘上下选择选项时无法按照列表顺序选择怎么办?

vue+element项目,select组件搜索改变下拉部分选项之后,再次搜索出现键盘上下选择选项时无法按照列表顺序选择怎么办?

鸿蒙传说 2019-10-17 09:32:44
vue+element项目select组件搜索改变下拉部分选项之后,再次搜索出现键盘上下选择选项时无法按照列表顺序选择,而是变成列表顺序还是正常的,但是用键盘的上下选择选项时,会跳过上次搜索出的那项数据,等选择完其他的之后再跳到上次搜索的数据上尝试过清空搜索出的列表,但是没有用,也看了搜索之后data中列表顺序是对的,但是就是上下键选择时不对,也不报错相关代码商品编号69码商品名称生产厂商{{item.commodityCode}}{{item.SixNineCode}}{{item.name}}{{item.manufactor}}js部分filterGoodsBatchData(v){this.searchGoodsBatchData=vthis.goodsListData=[]console.log('搜索之前先清空',this.goodsListData)this.goodsListData=this.copyGoodsListData.filter((item)=>{constval=v.toLowerCase()if(item.commodityCode.indexOf(val)!==-1)returntrueif(item.SixNineCode.indexOf(val)!==-1)returntrueif(item.name.indexOf(val)!==-1)returntrueif(item.manufactor.indexOf(val)!==-1)returntrue})console.log('搜索之后',this.goodsListData)},请问各位这是要怎么才能解决呢?百度了两天了都没找到对应的答案
查看完整描述

2 回答

?
慕村9548890

TA贡献1884条经验 获得超4个赞

这个是Element-UISelect组件自身的bug,它官方网站给出的案例也是这样的情况,建议自己封装组件实现特殊功能,灵活性更大。
                            
查看完整回答
反对 回复 2019-10-17
?
catspeake

TA贡献1111条经验 获得超0个赞

你需要设置个中间变量来接收你搜索的值,你的原始数据是不能动的
{{item.username}}
{{item.userId}}
userFilter(query=""){
letarr=this.dataList.filter(item=>{
return(
item.username.indexOf(query)!=-1||item.userId.indexOf(query)!=-1
);
});
this.userDataTemp=arr;
},
                            
查看完整回答
反对 回复 2019-10-17
  • 2 回答
  • 0 关注
  • 1927 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信