uniapp 开发小程序的时候使用自定义 tabbar 时出现切换页面闪烁的情况

问题:在使用自定义组件的时候可以看到页面切换明显的闪烁, 这种体验是很不好的, 当然最好的方式就是使用原生导航栏, 不要搞花里胡哨的东西。

来看下体验不好的效果

优化调整

先说思路,就是仍然设置原生 tabbar, 在应用启动的时候主动隐藏原生 tabbar, 然后使用自定义组件来进行位置占位。

在 page.json 里面设置对应的tabbar字段,

json 复制代码
  "tabBar": {
    "color": "#727477",
    "selectedColor": "#196FFF",
    "borderStyle": "black",
    "backgroundColor": "#FFFFFF",
    "height": "105rpx",
    "fontSize": "20rpx",
    "list": [
      {
        "pagePath": "pages/home/home",
        "text": "首页"
      },
      {
        "pagePath": "pages/explore/explore",
        "text": "发现"
      },
      {
        "pagePath": "pages/training/training",
        "text": "练习"
      },
      {
        "text": "我的",
        "pagePath": "pages/my/my"
      }
    ]
  },

然后在 app.vue 文件里 launch 生命周期的时候隐藏原生的tabbar

ts 复制代码
onLaunch (() => {
  uni.hideTabBar()
})

最后在每个 tab 页面添加你自定义的 tabbar 组件, 自定义 tabbar 组件里面要使用 uni.switchTab 进行切换页面。

总结:本质上只不过是在原生 tabbar 页面添加了自定义 tabbar 组件, 我们只是把原生的隐藏了,然后用自定义组件进行了占位

可以看到优化后的效果, 在首次切换到我的页面的时候仍会有闪烁, 但是首次加载过后再次切换到页面就不再会有闪烁的问题了。

相关推荐
天***889614 小时前
小程序婚纱店摄影楼预约婚庆礼展示,小程序开发定制,会员下单档期系统
小程序
说私域14 小时前
开源AI智能名片链动2+1模式商城小程序下短视频电商变现与广告变现的对比研究
人工智能·小程序
鹿衔`15 小时前
StarRocks 2.5.22 混合部署实战文档(CDH环境)
starrocks·apache·paimon
homelook15 小时前
uniapp蓝牙demo
uni-app
Rover.x15 小时前
apache.poi XSSFWorkbook创建失败,空指针
apache
鹿衔`16 小时前
Apache Doris 2.1.10 集群部署与 Paimon 数据湖集成实战文档
apache·doris·paimon
天***889616 小时前
美业医疗美容院小程序,预约会员管理养生馆诊所肌护肤理疗系统,附源码交付
小程序
鹿衔`17 小时前
Apache Doris 4.0.1 集群部署与 Paimon 数据湖集成实战文档
flink·apache·doris·paimon
2501_915909061 天前
手机崩溃日志导出的工程化体系,从系统级诊断到应用行为分析的多工具协同方法
android·ios·智能手机·小程序·uni-app·iphone·webview
toooooop81 天前
微信小程序轮播图高度自适应优化
微信小程序·小程序