问题描述

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) ,至此问题得到解决。
这里需要注意的是:一定要使用定时器,不然效果依然不会得到解决,尽量把定时时间设置短一点,使用起来比较友好一点。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐