{
"pages": [
"pages/home/home",
"pages/goods/goods",
"pages/cart/cart",
"pages/mine/mine"
],
...
"tabBar": {
"color": "#999999",
"selectedColor": "#3D98FF",
"backgroundColor": "#ffffff",
"borderStyle": "black",
"list": [
{
"pagePath": "pages/home/home",
"text": "首页",
"iconPath": "assets/imgs/home.png",
"selectedIconPath": "assets/img/home2.png"
},
{
"pagePath": "pages/goods/goods",
"text": "商品",
"iconPath": "assets/imgs/gift.png",
"selectedIconPath": "assets/img/gift2.png"
},
{
"pagePath": "pages/cart/cart",
"text": "购物车",
"iconPath": "assets/imgs/cart.png",
"selectedIconPath": "assets/img/cart2.png"
},
{
"pagePath": "pages/mine/mine",
"text": "我的",
"iconPath": "assets/imgs/user.png",
"selectedIconPath": "assets/img/user2.png"
}
]
}
}
这段代码是微信小程序项目中,app.json
文件中,用于配置底部导航栏(TabBar)的模板代码
tabBar 是一个对象,它包含了底部导航栏的各种配置信息,例如,文字颜色、选中文字颜色、背景颜色、边框样式、导航栏的每个菜单项列表
类型:字符串,十六进制颜色码
含义:表示底部导航栏未选中时文字的颜色
类型:字符串,十六进制颜色码
含义:表示底部导航栏选中时文字的颜色
类型:字符串,十六进制颜色码
含义:底部导航栏的背景颜色
类型:字符串
含义:底部导航栏顶部边框的颜色,仅支持 black、white
类型:数组,其中的每个元素是一个导航菜单项对象
含义:导航栏的菜单项对象列表
注:最少需要配置 2 个菜单项对象,最多可以配置 5 个菜单项对象
类型:字符串
含义:点击该菜单项时要跳转的页面路径
类型:字符串
含义:菜单项显示的文字
类型:字符串
含义:菜单项未选中时显示的图标路径,指向本地的图片文件
类型:字符串
含义:菜单项选中时显示的图标路径,指向本地的图片文件
https://vant-ui.github.io/vant-weapp/#/quickstart
安装 Vant Weapp:npm i @vant/weapp -S --production
修改 app.json
:将 app.json
中的 "style": "v2"
去除
点击 【工具】
-> 点击 【构建 npm】
{
"navigationBarTitleText": "首页",
"usingComponents": {
"van-tabbar": "@vant/weapp/tabbar/index",
"van-tabbar-item": "@vant/weapp/tabbar-item/index"
}
}
<view class="page">
<view>首页view>
<van-tabbar bind:change="onChangeTab" active="{{ active }}">
<van-tabbar-item icon="home-o" url="/pages/home/home">首页van-tabbar-item>
<van-tabbar-item icon="gift-o" url="/pages/goods/goods">商品van-tabbar-item>
<van-tabbar-item icon="cart-o" url="/pages/cart/cart">购物车van-tabbar-item>
<van-tabbar-item icon="user-o" url="/pages/mine/mine">我的van-tabbar-item>
van-tabbar>
view>
Page({
data: {
active: 0,
},
onChangeTab(event) {
const { index } = event.detail;
this.setData({ active: index });
const pages = ["/pages/home/home", "/pages/goods/goods", "/pages/cart/cart", "/pages/mine/mine"];
wx.switchTab({
url: pages[index],
});
},
});
{
"navigationBarTitleText": "商品",
"usingComponents": {
"van-tabbar": "@vant/weapp/tabbar/index",
"van-tabbar-item": "@vant/weapp/tabbar-item/index"
}
}
<view class="page">
<view>商品view>
<van-tabbar bind:change="onChangeTab" active="{{ active }}">
<van-tabbar-item icon="home-o" url="/pages/home/home">首页van-tabbar-item>
<van-tabbar-item icon="gift-o" url="/pages/goods/goods">商品van-tabbar-item>
<van-tabbar-item icon="cart-o" url="/pages/cart/cart">购物车van-tabbar-item>
<van-tabbar-item icon="user-o" url="/pages/mine/mine">我的van-tabbar-item>
van-tabbar>
view>
Page({
data: {
active: 1,
},
onChangeTab(event) {
const { index } = event.detail;
this.setData({ active: index });
const pages = ["/pages/home/home", "/pages/goods/goods", "/pages/cart/cart", "/pages/mine/mine"];
wx.switchTab({
url: pages[index],
});
},
});
{
"navigationBarTitleText": "购物车",
"usingComponents": {
"van-tabbar": "@vant/weapp/tabbar/index",
"van-tabbar-item": "@vant/weapp/tabbar-item/index"
}
}
<view class="page">
<view>购物车view>
<van-tabbar bind:change="onChangeTab" active="{{ active }}">
<van-tabbar-item icon="home-o" url="/pages/home/home">首页van-tabbar-item>
<van-tabbar-item icon="gift-o" url="/pages/goods/goods">商品van-tabbar-item>
<van-tabbar-item icon="cart-o" url="/pages/cart/cart">购物车van-tabbar-item>
<van-tabbar-item icon="user-o" url="/pages/mine/mine">我的van-tabbar-item>
van-tabbar>
view>
Page({
data: {
active: 2,
},
onChangeTab(event) {
const { index } = event.detail;
this.setData({ active: index });
const pages = ["/pages/home/home", "/pages/goods/goods", "/pages/cart/cart", "/pages/mine/mine"];
wx.switchTab({
url: pages[index],
});
},
});
{
"navigationBarTitleText": "我的",
"usingComponents": {
"van-tabbar": "@vant/weapp/tabbar/index",
"van-tabbar-item": "@vant/weapp/tabbar-item/index"
}
}
<view class="page">
<view>我的view>
<van-tabbar bind:change="onChangeTab" active="{{ active }}">
<van-tabbar-item icon="home-o" url="/pages/home/home">首页van-tabbar-item>
<van-tabbar-item icon="gift-o" url="/pages/goods/goods">商品van-tabbar-item>
<van-tabbar-item icon="cart-o" url="/pages/cart/cart">购物车van-tabbar-item>
<van-tabbar-item icon="user-o" url="/pages/mine/mine">我的van-tabbar-item>
van-tabbar>
view>
Page({
data: {
active: 3,
},
onChangeTab(event) {
const { index } = event.detail;
this.setData({ active: index });
const pages = ["/pages/home/home", "/pages/goods/goods", "/pages/cart/cart", "/pages/mine/mine"];
wx.switchTab({
url: pages[index],
});
},
});