项目场景:
微信小程序要求自定义导航栏实现未登录时显示三个标签,登陆后显示五个标签,
状态
已实现功能
仍存在的问题描述
- 点击切换tab页会出现首次闪白的情况(之后就好了,估计是缓存页面了)
- 频繁切换会导致tab的样式跟不上
- 有时会出现点击第三个tab,选中样式会先跑到第一个tab,再显示到第三个tab上
原因:
这些问题在微信开放社区中未能找到解决办法,
部分链接如下:
switchTab跳转会先闪到第一个tab,然后是指定的tab
wx.switchTab跳转有闪动问题?!?!?
注:
根据保存在缓存中的登录状态 isLoggedIn 来决定是否显示完tab
解决方案:
app.json(项目根目录)
"tabBar": {
"custom": true, //不使用原生tabBar
"color": "#919191",
"selectedColor": "#008858",
"list": [
{
"pagePath": "pages/recommend/recommend",
"text": "推荐",
"iconPath": "/assets/tabBar/index.png",
"selectedIconPath": "/assets/tabBar/index_choose.png"
},
{
"pagePath": "pages/studyCenter/studyCenter",
"text": "学习",
"iconPath": "/assets/tabBar/studyCenter.png",
"selectedIconPath": "/assets/tabBar/studyCenter_choose.png"
},
{
"pagePath": "pages/ability/ability",
"text": "能力",
"iconPath": "/assets/tabBar/ability.png",
"selectedIconPath": "/assets/tabBar/ability_choose.png"
},
{
"pagePath": "pages/assessment/assessment",
"text": "评估",
"iconPath": "/assets/tabBar/assessment.png",
"selectedIconPath": "/assets/tabBar/assessment_choose.png"
},
{
"pagePath": "pages/center/center",
"text": "我的",
"iconPath":