实例:【小程序A】跳转至【小程序B】再跳回【小程序A】
【小程序A】触发跳转 wx.navigateToMiniProgram
### 【小程序A】触发跳转的页面
toMiniProgramB() {
wx.navigateToMiniProgram({
// 目标【小程序B】的AppId
appId: 'wxd65aed3773b31234',
// 目标【小程序B】的页面
path: 'pages/home/home',
// 需要传递给目标【小程序B】的数据
extraData: {
from:'我来自小程序A',
},
// 要打开的目标【小程序B】对应的版本;release: 正式版、develop:开发版、trial:体验版
envVersion: 'release',
success(res) {
// 跳转成功的的回调函数
},
fail(err) {
// 跳转失败的回调函数
},
complete(res) {
// 跳转接受的回调函数
}
})
}
【小程序A】配置navigateToMiniProgramAppIdList
### 【小程序A】app.json
// 需要跳转的小程序列表
navigateToMiniProgramAppIdList: [
'wxd65aed3773b31234',
],
【小程序B】 App.onLaunch,App.onShow 中获取到这份数据
### 【小程序B】app.js
onShow(options) {
if( options.referrerInfo.extraData ){
let extraData = options.referrerInfo.extraData
console.log(extraData.from) //'我来自小程序A'
}
}
【小程序B】跳回【小程序A】wx.navigateBackMiniProgram
backMiniProgramA() {
wx.navigateBackMiniProgram({
extraData: {
backFrom:'从小程序B返回',
},
success(res) {
// 跳转成功的的回调函数
},
fail(err) {
// 跳转失败的回调函数
},
complete(res) {
// 跳转接受的回调函数
}
})
}
【小程序A】 获取返回数据
### 【小程序A】app.js
onShow(options) {
if( options.referrerInfo.extraData ){
let extraData = options.referrerInfo.extraData
console.log(extraData.backFrom) //'从小程序B返回'
}
}
** 每个小程序可跳转的其他小程序数量限制为不超过 10 个**
微信官方文档地址
打开另一个小程序wx.navigateToMiniProgram