uni-app使用tabBar实现底部导航

2020-12-30   阅读:2662   类型:前端   分类:uni-app    标签: uni-app

image.png

1、tabBar简介

如果应用是一个多 tab 应用,可以通过 tabBar 配置项指定一级导航栏,以及 tab 切换时显示的对应页。

在 pages.json 中提供 tabBar 配置,不仅仅是为了方便快速开发导航,更重要的是在App和小程序端提升性能。在这两个平台,底层原生引擎在启动时无需等待js引擎初始化,即可直接读取 pages.json 中配置的 tabBar 信息,渲染原生tab。

2、注意事项

当设置 position 为 top 时,将不会显示 icon

tabBar 中的 list 是一个数组,只能配置最少2个、最多5个 tab,tab 按数组的顺序排序。

tabbar 切换第一次加载时可能渲染不及时,可以在每个tabbar页面的onLoad生命周期里先弹出一个等待雪花(hello uni-app使用了此方式)

tabbar 的页面展现过一次后就保留在内存中,再次切换 tabbar 页面,只会触发每个页面的onShow,不会再触发onLoad。

顶部的 tabbar 目前仅微信小程序上支持。需要用到顶部选项卡的话,建议不使用 tabbar 的顶部设置,而是自己做顶部选项卡,可参考 hello uni-app->模板->顶部选项卡。

3、实现方法

打开pages.json文件,添加如下代码

{
         "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
                  
                   {
                            "path": "pages/index/index"
                   },
                   {
                            "path": "pages/all/all"
                   },
                   {
                            "path": "pages/search/search"
                   },
                   {
                            "path": "pages/user/user"
                   }
         ],
         "tabBar": {
             "color": "#7A7E83",
             "selectedColor": "#febf0f",
             "borderStyle": "black",
             "backgroundColor": "#292b40",
             "list": [{
                                     "pagePath": "pages/index/index",
                                     "iconPath": "static/home.png",
                                     "selectedIconPath": "static/home_m.png",
                                     "text": "首页"
                            },
                            {
                                     "pagePath": "pages/all/all",
                                     "iconPath": "static/all.png",
                                     "selectedIconPath": "static/all_m.png",
                                     "text": "全部"
                            },
                            {
                                     "pagePath": "pages/search/search",
                                     "iconPath": "static/sear.png",
                                     "selectedIconPath": "static/sear_m.png",
                                     "text": "搜索"
                            },
                            {
                                     "pagePath": "pages/user/user",
                                     "iconPath": "static/user.png",
                                     "selectedIconPath": "static/user_m.png",
                                     "text": "我的"
                            }
                   ]
         }
}


腾讯云11.11上云拼团Go,2核2G3M云服务器 28元/年

‘简忆博客’微信公众号 扫码关注‘简忆博客’微信公众号,获取最新文章动态
转载:请说明文章出处“来源简忆博客”。http://www.tpxhm.com/fdetail/565.html

×
觉得文章有用就打赏一下文章作者
微信扫一扫打赏 微信扫一扫打赏
支付宝扫一扫打赏 支付宝扫一扫打赏

文章评论(0)

登录
简忆博客壁纸一
简忆博客壁纸二
简忆博客壁纸三
简忆博客壁纸四
简忆博客壁纸五
简忆博客壁纸六
简忆博客壁纸七
简忆博客壁纸八
头像

简忆博客
勤于学习,乐于分享

置顶推荐

打赏本站

如果你觉得本站很棒,可以通过扫码支付打赏哦!
微信扫码:你说多少就多少~
微信扫码
支付宝扫码:你说多少就多少~
支付宝扫码
×