收藏
回答

关于自定义TabBar切换时闪烁问题,无意间发现的解决方案,不确定是否正确?

在照搬自定义TabBar的示例代码(只有2个tab)后,修改为三个及以上的tab时,除了切换涉及的2个tab外,其他的tab也会闪烁一下

示例代码中的切换tab函数如下:

methods: {
   switchTab(e) {
     const data = e.currentTarget.dataset
     const url = data.path
     wx.switchTab({url})
     this.setData({
       selected: data.index
     })
   }
 }

当修改switchTab函数如下

methods: {
   switchTab(e) {
     const data = e.currentTarget.dataset
     const url = data.path
     wx.switchTab({url})   //可能是改变样式的原因
   }
 }

即删除setData后,发现切换功能依然完整(样式和路由变化正确),且不涉及当前切换的tab也不会闪烁了; 按照正常逻辑应该是路由变化,样式不变的,但后来琢磨一下,觉得是 wx.switchTab({url})影响了selected ,但原理不太清楚,怀疑这2行都修改selected  的值,导致了闪烁,各位可以参考一下。

回答关注问题邀请回答
收藏

8 个回答

  • 2019-10-30

    代码片段https://developers.weixin.qq.com/s/2Wq9Pvml70cO

    2019-10-30
    有用 1
    回复
  • 谜
    2020-08-04

    太牛了 帮我解决了这个问题!!

    2020-08-04
    有用
    回复
  • 来去之间·王启年
    来去之间·王启年
    2020-07-14

    最近找了很多自定义TabBar的根据官方文档实现的,放在项目里初始化可以显示,点击一个页面以后开发者工具正常,真机直接消息了,目前发现bottom:0,在有些页面没有显示在底部,改成top:0都可以显示,不知道楼主了解么,这种情况是哪个组件或者样式导致的?

    2020-07-14
    有用
    回复
  • Mr.Crab
    Mr.Crab
    2020-04-27

    这样子第一次切换的时候还是会闪烁,以后就不会,

    2020-04-27
    有用
    回复 4
    • FYZ
      FYZ
      2022-05-19
      老哥请问这个问题你解决了吗?
      2022-05-19
      回复
    • Yz
      Yz
      2022-07-10回复FYZ
      老哥, 你解决了吗.   我现在也遇到了, 好痛苦
      2022-07-10
      回复
    • Ran 宇▼
      Ran 宇▼
      2022-10-17回复Yz
      老哥解决了吗。
      2022-10-17
      回复
    • 初荷未聚尘
      初荷未聚尘
      2023-01-17
      老哥解决了吗
      2023-01-17
      回复
  • misslucky
    misslucky
    2020-03-30

    为啥我这这边删掉那个setData就切换不了图片了。加上setData,index选中的tab和实际页面的path是错乱的,就是我选的tab1,页面的跳转到了path1,但是tab选中的是index0,请问你碰到过这种问题吗


    2020-03-30
    有用
    回复 2
    • 豌豆公子
      豌豆公子
      2021-10-30
      我也遇到这个问题,请问有解决吗?
      2021-10-30
      回复
    • 豌豆公子
      豌豆公子
      2021-10-30回复豌豆公子
      解决了。。。跟楼主一样,不要在 tabbar 里面 setData selected 值,在每个页面的 onShow 周期内,getTabBar 实例,并 setData
      2021-10-30
      1
      回复
  • creep
    creep
    2020-01-19

    真的是厉害,我找了好久,终于找到你了

    2020-01-19
    有用
    回复
  • Make it possible
    Make it possible
    2019-11-28

    闪烁的问题解决了,不过我的还会抖动和白屏,谢谢大佬

    2019-11-28
    有用
    回复
  • 渺
    2019-11-01

    大佬 我刚好也遇到了这个问题  谢谢你 我也解决了

    2019-11-01
    有用
    回复 1
    • 2019-11-01
      不是大佬,能帮到别人,我也很高兴!
      2019-11-01
      回复
登录 后发表内容
问题标签