elementUI 下拉的 dom 太多,操作卡顿的解决方案

一、如果是 Vue3 的话,使用 element-plus 的 Select V2 虚拟列表选择器

二、如果是 Vue2 的话,在 Select 选择器上,filter-method 自定义搜索方法

 这种是自己处理的业务逻辑,备份下拉数据 this.options,在自定义的搜索方法中,从备份下拉数据中过滤出搜索项并截取前100条数据,赋值给 el-select 的下拉项 this.optionsDisplay,需要注意以下3点:

1.数组的key得是唯一的,最好不要用 index,否则更换数组会有问题;
2.搜索不到的时候,再次打开不显示options数据问题,在 focus 的时候,筛选下数据;
3.this.options 放到 data 里,需要 Object.freeze() 冻结一下;

posted @ 2022-11-30 18:10  heroljy  阅读(1387)  评论(0编辑  收藏  举报