问题:
做小程序时有需求, 要跳转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) {
}
}
网友评论