Vant Weapp 2x原生小程序tabbar组件全局通用已测试

试过了网上很多版本,但是太多的问题,按下面操作避免踩坑。

1,创建文件夹custom-tab-bar包含index.wxml,index,json,index.wxss,index,js

// custom-tab-bar/index.js
Component({

  /**
   * 组件的初始数据
   */
  data: {
    active: 0,
    list: [{
      icon: 'home-o',
      text: '首页',
      url: '/pages/index/index'
    },
    {
      icon: 'chat-o',
      text: '日志',
      url: '/pages/logs/logs'
    }
    ]
  },

  /**
   * 组件的方法列表
   */
  methods: {

    onChange(event) {
      this.setData({
        active: event.detail
      });
      wx.switchTab({
        url: this.data.list[event.detail].url
      });
    },

    init() {
      const page = getCurrentPages().pop();
      this.setData({
        active: this.data.list.findIndex(item => item.url === `/${page.route}`)
      });
    }
  }
})

2,custom-tab-bar内的index.wxml



<van-tabbar active="{{ active }}" bind:change="onChange">
  <van-tabbar-item wx:for="{{ list }}" wx:key="index" icon="{{ item.icon }}">
    {{ item.text }}
  </van-tabbar-item>
</van-tabbar>

3,index.json添加

{
  "component": true,
  "usingComponents": {
    "van-tabbar": "@vant/weapp/tabbar/index",
    "van-tabbar-item": "@vant/weapp/tabbar-item/index"
  }
}

4,app.json添加

{
  "component": true,
  "usingComponents": {
    "van-tabbar": "@vant/weapp/tabbar/index",
    "van-tabbar-item": "@vant/weapp/tabbar-item/index"
  }
}

5,导航页面js内每页添加

/**
   * 生命周期函数--监听页面显示
   */
  onShow() {
    this.getTabBar().init();
  },

6,结束,按需修改即可

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值