elementUI下拉选择select反应慢

在使用elementUI时,遇到select切换导致另一个下拉框响应慢的问题,原因是change事件触发大数据渲染。解决方法是利用v-show而非v-if控制显示,以减少DOM操作。对于多个数组的场景,寻求更优解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近遇到一个很诡异的问题,elementUI的select切换下拉选项,联动另一个下拉选项的选项数据时,变得很慢,改变选项后半天这个下拉框还不收起改变值,后面研究了一下,发现是change事件要执行完,下拉框才会收起改变值。但是我这个change事件要改变的是另一个下拉框选项数据,这个数据有特别大上千条,这个在渲染的dom的时候很慢,因此影响了第一个下拉框的改变响应。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
后来想了一个办法,让数据渲染好,只是控制他的显示隐藏就好了,这个地方要注意不要用v-if v-else,要用v-show
vue中的 v-if 和 v-show 二者都可以动态的控制元素的隐藏和显示,但是他们控制的原理是不同的

v-if

v-if 控制元素显示或隐藏是把dom元素整个的渲染或者删除,如果删除,也就是页面中不存在这个dom元素,以此达到隐藏的效果;

所以v-if在每次切换的时候都会重新创建或者销毁元素,有较高的切换性能消耗;

而且v-if是惰性的,如

element-ui提供了el-select下拉选择器组件,但是并未提供树形选择器的功能。因此,有开发者自己封装了element-ui的select选择框组件来处理树状数据的选择。具体使用方法可以参考这个封装的组件的代码 。这个组件使用了el-selectel-option来实现下拉选择框,同时在el-option中使用了el-tree组件来展示树状数据。你可以根据实际需求进行相应的修改和定制。在这个组件中,还提供了一些新增的功能,比如搜索栏及树状结构懒加载以及多选时的二次点击已选内容的处理。这些功能的具体实现可以参考相关的代码和效果图。总结来说,通过封装element-ui的select选择框组件,可以实现树形选择器的功能。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [< elementUi 下拉选择框组件 树状部门选择( 多选/单选 )>](https://blog.youkuaiyun.com/MrWen2395772383/article/details/124043096)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [element-ui之el-select下拉选择器树形选择器的使用方法](https://blog.youkuaiyun.com/m0_46156566/article/details/128484832)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值