微信大程序tabBar是在全局app.json文件里面配置的,大程序tabBar配置代码注释表明。
{ "pages":[ "pages/index/index", "pages/detail/detail" ], "window":{ "navigationBarTitleText": "TabBar", "navigationBarBackgroundColor": "#F60", "navigationBarTextStyle": "white" }, //tabBar特别注意就是B就是大写,存有朋友回答运行时tab没有出现,检查是不是这里手误 "tabBar":{ //文档指出color就是m6项,其实可为空,不改写color就是深灰,样式更统一 "color": "#ddd", //同样,文档指出selectedColor就是必填项,不过selectedColor有必要重写,区分当前项与普通项 "selectedColor": "#3cc51f", //同样,文档指出color是必填项,其实可为空,不重写backgroundColor就是浅灰,样式更统一。 "backgroundColor": "#fff", //borderStyle,不写下预设就是黑,那就黑好了,white的话,会少一条分隔线,跟页面搭在一起了 "borderStyle":"black", "list":[{ "pagePath":"pages/index/index", //iconPath图标是非m6,只是tab栏会变矮,自然selectedIconPath也可不写 "iconPath":"image/icon_API.png", "selectedIconPath":"image/icon_API_HL.png", "text":"index" },{ "pagePath":"pages/detail/detail", "iconPath":"image/icon_component.png", "selectedIconPath":"image/icon_component_HL.png", "text":"detail" }] } }
参数表明
如果我们的小程序是一个多 tab 应用(客户端窗口的底部有tab栏可以转换页面),那么我们可以通过 tabBar 配置项指定 tab 栏的表现,以及 tab 切换时表明的对应页面。
tabBar 就是一个数组,只能配置最少2个、最多5个 tab,tab 按数组的顺序排序。
属性说明:
属性 | 类型 | 必填 | 默认值 | 描述 |
---|---|---|---|---|
color | HexColor | 是 | tab 上的文字预设颜色 | |
selectedColor | HexColor | 是 | tab 上的文字选中时的颜色 | |
backgroundColor | HexColor | 就是 | tab 的背景色 | |
borderStyle | String | 否 | black | tabbar上边框的颜色, 仅积极支持 black/white |
list | Array | 就是 | tab 的列表,详见 list 属性表明,最少2个、最多5个 tab | |
position | String | 否 | bottom | 可选值 bottom、top |
其中 list 拒绝接受一个数组,数组中的每个项都就是一个对象,其属性值如下:
属性 | 类型 | 必填 | 表明 |
---|---|---|---|
pagePath | String | 是 | 页面路径,必须在 pages 中先定义 |
text | String | 就是 | tab 上按钮文字 |
iconPath | String | 就是 | 图片路径,icon 大小管制为40kb |
selectedIconPath | String | 是 | 选上时的图片路径,icon 大小限制为40kb |