全局配置-案例:配置 tabBar
本案例将在小程序中实现底部tabBar,包含三个tab:首页、消息、联系我们。根据需求,我们将使用提供的小图标资源来配置tabBar,选中后图标变亮。下面详细介绍三个步骤。
1.步骤1- 拷贝图标资源
将资料目录中的 images 文件夹,拷贝到小程序项目根目录中。将需要用到的小图标分为 3 组,每组两个,其中:图片名称中包含 -active 的是选中之后的图标,图片名称中不包含 -active 的是默认图标。
2.步骤2- 新建 3 个对应的 tab 页面
通过 app.json 文件的 pages 节点,快速新建 3 个对应的 tab 页面,示例代码如下:
{
"pages": [
"pages/home/home",
"pages/message/message",
"pages/contact/contact"
],
"window": {...},
"tabBar": {...}
}
其中,“pages/home/home” 是首页,“pages/message/message” 是消息页面,“pages/contact/contact” 是联系我们页面。
3.步骤3-配置 tabBar 选项
① 打开 app.json 配置文件,并在 pages、window 平级下新增 tabBar 节点。
② tabBar 节点中,新增 list 数组,这个数组中存放的,是每个 tab 项的配置对象。
③ 在 list 数组中,新增每一个 tab 项的配置对象。对象中包含的属性如下:
- pagePath 指定当前 tab 对应的页面路径【必填】
- text 指定当前 tab 上按钮的文字【必填】
- iconPath 指定当前 tab 未选中时的图片路径【可选】
- selectedIconPath 指定当前 tab 被选中后高亮的图片路径【可选】
示例代码如下:
"tabBar":{
"position": "bottom",
"borderStyle": "black",
"backgroundColor": "#ffffff",
"color": "#999999",
"selectedColor": "#007aff",
"list": [
{
"pagePath": "pages/home/home",
"text":"首页",
"iconPath": "/images/tabs/home.png",
"selectedIconPath": "/images/tabs/home-active.png"
},
{
"pagePath": "pages/message/message",
"text": "消息",
"iconPath": "/images/tabs/message.png",
"selectedIconPath": "/images/tabs/message-active.png"
},
{
"pagePath": "pages/contact/contact",
"text":"联系我们",
"iconPath": "/images/tabs/contact.png",
"selectedIconPath": "/images/tabs/contact-active.png"
}
]
}
其中,list 数组中存放的是三个 tab 项的配置信息。配置项包括每个 tab 对应的页面路径(pagePath)、显示的文字(text)、未选中图标的路径(iconPath)和选中后高亮图标的路径(selectedIconPath)。
需要注意的是,tabBar 中只能配置最少 2 个、最多 5 个 tab 页签。当渲染顶部 tabBar 时,不显示图标,只显示文本。
在页面中使用 tabBar 时,会自动根据 app.json 中的配置信息生成对应的 tab bar,实现页面之间的快速切换,提高了用户体验。