在照搬自定义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 的值,导致了闪烁,各位可以参考一下。
代码片段https://developers.weixin.qq.com/s/2Wq9Pvml70cO
太牛了 帮我解决了这个问题!!
最近找了很多自定义TabBar的根据官方文档实现的,放在项目里初始化可以显示,点击一个页面以后开发者工具正常,真机直接消息了,目前发现bottom:0,在有些页面没有显示在底部,改成top:0都可以显示,不知道楼主了解么,这种情况是哪个组件或者样式导致的?
这样子第一次切换的时候还是会闪烁,以后就不会,
为啥我这这边删掉那个setData就切换不了图片了。加上setData,index选中的tab和实际页面的path是错乱的,就是我选的tab1,页面的跳转到了path1,但是tab选中的是index0,请问你碰到过这种问题吗
真的是厉害,我找了好久,终于找到你了
闪烁的问题解决了,不过我的还会抖动和白屏,谢谢大佬
大佬 我刚好也遇到了这个问题 谢谢你 我也解决了