如何在微信小程序使用vant 进行自定义底部tabbar组件

在微信小程序中使用 Vant 自定义底部 TabBar 需要进行以下步骤:

一、首先,你需要在 app.json 文件中配置自定义 TabBar。

在 "tabBar" 字段中,设置 "custom" 为 true,表示使用自定义 TabBar。

app.json示例例如:
javascript 复制代码
"tabBar": {
  "custom": true,
    "list": [
      {
        "pagePath": "pages/home/home",
        "text": "首页"
      },
      {
        "pagePath": "pages/my/my",
        "text": "我的"
      }
    ]
}

二、接下来,在页面中使用 Vant 的 Tab 组件来实现自定义的底部 TabBar

你可以根据自己的需求来设计底部 TabBar 的样式和功能。

例如:

自定义组件 custom-tab-bar.wxml
javascript 复制代码
<van-tabbar active="{{ active }}" bind:change="onChange">
  <van-tabbar-item icon="home-o">首页</van-tabbar-item>
  <van-tabbar-item icon="friends-o">我的</van-tabbar-item>
</van-tabbar>
自定义组件custom-tab-bar.js
javascript 复制代码
Component({
  properties: {
    active: {
      type: Number,
      value: 0
    }
  },
  methods: {
    onChange(event) {
      const index = event.detail;
      switch (index) {
        case 0:
          wx.switchTab({
            url: '/pages/home/home'
          });
          break;
       
        default:
          wx.switchTab({
            url: '/pages/my/my'
          });
      }
      
    }
  }
});
自定义组件custom-tab-bar.json
javascript 复制代码
 "usingComponents": {
    "van-tabbar": "@vant/weapp/tabbar/index",
    "van-tabbar-item": "@vant/weapp/tabbar-item/index"
  }

三、最后在页面中引用自定义的tabbar

在需要的页面 加上custom-tab-bar自定义组件

比如 my.wxml和home.wxml

相应的wxml文件引用组件
javascript 复制代码
<custom-tab-bar active="{{ active }}" bind:change="onTabChange" />
相应的json文件
javascript 复制代码
"usingComponents": {
    "custom-tab-bar": "../../components/custom-tab-bar/custom-tab-bar"
  }
相应的js文件
javascript 复制代码
Page({

  data: {
    active:1
  },
 
 
})

最后,大概就是这个效果

相关推荐
fengGer的bugs5 小时前
新生儿喂养记录微信小程序:本地存储、四套主题,以及一份可改期的疫苗体检日程
微信小程序
高级程序源7 小时前
SSM仓储管理系统31582-计算机课程设计、毕业设计
vue.js·python·mysql·小程序·flask·课程设计
青企通7 小时前
弱网环境下小程序首屏性能优化:从 5.2 秒到 1.4 秒的完整实践
性能优化·小程序
5G微创业9 小时前
去除抖音视频水印的Python实现
python·微信小程序·去水印
WeiXin_DZbishe9 小时前
基于微信小程序的本地闲置物品交易平台-计算机毕设 附源码【课程设计】26825
vue.js·spring boot·python·微信小程序·架构·php·课程设计
高级程序源9 小时前
springboot本地生活服务平台33399-计算机课程设计、毕业设计
vue.js·spring boot·python·mysql·小程序·flask·课程设计
高级程序源10 小时前
django房屋租赁系统28636-计算机课程设计、毕业设计
python·mysql·elasticsearch·小程序·django·flask·课程设计
CRMEB定制开发10 小时前
开源模型正在吃掉闭源的市场,这意味着什么?
小程序·公众号商城·商城源码·crmeb·开源商城
小蒜学长11 小时前
基于微信小程序的医院医疗废弃物追溯管理系统(代码+数据库+LW)
java·spring boot·后端·微信小程序·医疗废弃物
霍营_托尼11 小时前
微信小程序点餐项目实战:飞入动画、样式错位、弹窗不消失,7 个前端坑的完整排障记录
javascript·微信小程序·动效