最近開始小程序遇到tabbar需要自定義,在其中開發時遇到很多BUG
項目使用的是vant-weapp以及微信小程序原生
1.自定義tabbar(先看官網demo)
首先在與pages同級建立一個文件夾custom-tab-bar(注意名稱必須是custom-tab-bar),以及創建一個名稱為index的Component組件
然后引入vant的tabbar,引入vant需要配置custom-tab-bar里面的index.json文件里面的usingComponents(或者也可以app.json全局配置),如下:
custom-tab-bar里面的index.wxml里面:
custom-tab-bar里面的index.js里面:
另外在app.json里面進行配置:
custom:true,開啟tabbar自定義
效果如下:
使用自定義tabbar容易遇到的問題:
1.自定義tabbar不生效:
原因文件名稱不正確,必須使用custom-tab-bar命名
2.切換延遲問題,如A→B,需要點擊兩次icon才能正確選中
解決方法如下:
在跳轉的頁面的show生命周期里面加上,activeIndex是custom-tab-bar里面當前設置選中下標的參數名,而值是對應tabbar數組里面對應的下標
3.切換閃爍問題:
如A→B,切換的時候頁面會閃爍一下,解決方法:
注釋掉custom-tab-bar里面index.js里切換事件的this.setData