微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

uniapp nvue页面数组过滤遍历/重新赋值时,数据循环渲染v-for出现数据闪烁的问题

问题描述

uniapp开发移动端时,在nvue页面中,需要对当前数组进行过滤(搜索),然后对该数组重新赋值的时候,页面重新渲染会把原来存在的数据一个一个的移除掉,比如说一个list数组原来有30条数据,然后我把list这个数组筛选10条数据,就会出现页面在那一直闪烁着移除数据的情况,看着就很不爽。废话就不多说了,经过几番挣扎,我是这样解决的。

解决方案

首先在data中声明一个变量 status 控制渲染数据盒子的显示隐藏,初始化 status = true;然后在数据渲染的地方使用 v-if = "status";再当你重新渲染数据的,先把status置为false this.status = false;最后数据重新赋值完成使用定时器把status变为true setTimeout(() => {this.status = true},0) ,至此问题得到解决。
这里需要注意的是:一定要使用定时器,不然效果依然不会得到解决,尽量把定时时间设置短一点,使用起来比较友好一点。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐