通过点击不同按钮 使用v-if 切换下方不同组件的显示,屏幕会闪烁,偶尔会看到明显的页面颤抖
6***@qq.com
- 发布:2020-04-10 11:13
- 更新:2023-10-09 00:38
- 阅读:3049
5 个回复
最佳回复
DCloud_uniCloud_JSON
v-if会导致组件重新渲染,把元素的宽或者高设置为:0,也可以达到隐藏的效果
同理也可以用插件:weex-v-show实现, 详情查看:https://ext.dcloud.net.cn/plugin?id=3662
uViewUI - 【www.uviewui.com】uView UI,是uniapp生态最优秀的UI框架,全面的组件和便捷的工具会让您信手拈来,如鱼得水
这是因为,v-if会导致组件重新渲染,渲染相当于删掉组件,重新生成(这个过程可能需要几十毫秒),所以导致闪烁。为了避免这个情况,应该通过display:none; / display: block;来动态切换,这样组件不会导致渲染,而只是隐藏和显示的问题。
3***@qq.com
你说的这种方可以用v-show 解决,但是nvue 不支持v-show, 有解决方法吗?
2021-11-17 17:44
月夜小涵
回复 3***@qq.com: 请问解决了嘛
2022-11-10 17:52
luyisac
nvue,没有v-show,也没有display:none; / display: block;请问还有什么解决方法
2023-04-01 19:09
月夜小涵
同问
月夜小涵
v-if 判断 前面的元素还没有消失,后面的就开始渲染,导致闪烁厉害
8***@qq.com
同问,这个问题有朋友知道怎么解决吗?