微信小程序switchTab带参解决方法

时间:2022-07-23
本文章向大家介绍微信小程序switchTab带参解决方法,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

问题: 做小程序时有需求, 要跳转tab页的时候带参数跳过去, 但是微信小程序文档里写的switchTab不能带参, 所以应该如何操作?

文档

解决: 思路就是通过storage来缓存数据, 跳转到指定页后获取storage, 并清除数据, 这样就可以了 需要注意的是, 跳转可能发生在指定页面已经onLoad的情况下, 所以可以把获取参数的逻辑写在生命周期函数onShow

跳转代码:

toQuestion: function (e) {
    wx.setStorageSync('subject', e.currentTarget.dataset.type)  
    wx.switchTab   ({
      url: '/pages/exec/exec'
    })
  }

获取参数代码:

onShow: function () {
    try {
      const result = wx.getStorageSync('subject')
      if (result) {
        // 处理相关操作
        // .......

        // 清除数据, 可以异步清除
        wx.removeStorage({
          key: 'subject',
          success: (result) => {},
          fail: () => {},
          complete: () => {}
        })
      }
    } catch (error) { 
    }
  }