先看下他们的文档
1、微信小程序
https://developers.weixin.qq.com/miniprogram/dev/api/route/wx.switchTab.html
需要跳转的 tabBar 页面的路径 (代码包路径)(需在 app.json 的 tabBar 字段定义的页面),路径后不能带参数
。
2、uni-app
https://uniapp.dcloud.net.cn/api/router.html#switchtab
需要跳转的 tabBar 页面的路径(需在 pages.json 的 tabBar 字段定义的页面),路径后不能带参数
那么问题来了,我从tabA跳转到tabB怎么传参呢?
参数工具类
其实可以通过一个全局变量,来传递参数,为了只传一次,每次获取之后就清空,避免污染数据
// query-util.js
const DATA = new Map()
const KEY = 'query'export default {get() {const value = DATA.get(KEY)DATA.clear()return value || {}},set(value) {DATA.set(KEY, value)},
}
使用方法
设置参数
// PageA.js
Query.set({id: "id"
})uni.switchTab({url: '/pages/item-detail/item-detail',
})
接收参数
PageB.js
{// 页面首次加载onLoad: function (option) {const query = Query.get()},// 页面显示onShow: function () {const query = Query.get()}
}