6***@qq.com
6***@qq.com
  • 发布:2020-04-10 11:13
  • 更新:2023-10-09 00:38
  • 阅读:3049

通过点击不同按钮 使用v-if 切换下方不同组件的显示,屏幕会闪烁

分类:nvue

通过点击不同按钮 使用v-if 切换下方不同组件的显示,屏幕会闪烁,偶尔会看到明显的页面颤抖

2020-04-10 11:13 负责人:无 分享
已邀请:

最佳回复

DCloud_uniCloud_JSON

DCloud_uniCloud_JSON

v-if会导致组件重新渲染,把元素的宽或者高设置为:0,也可以达到隐藏的效果
同理也可以用插件:weex-v-show实现, 详情查看:https://ext.dcloud.net.cn/plugin?id=3662

uViewUI

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

8***@qq.com

同问,这个问题有朋友知道怎么解决吗?

要回复问题请先登录注册