A小程序跳转到B小程序,并且把参数带到B小程序。
A小程序代码:
wxml
<navigator target="miniProgram" open-type="navigate" app-id="{{BappId}}" path="{{path}}" extra-data="{{data}}" version="develop" bindtap='navgatorFn'>js:
我这跳转的是指定的home页,如果path是空,那么跳转到B小程序的首页。
Page({ data: { BappId:'B小程序的AppId', path:'/pages/home/home' , data: {name:'阿森纳'} },其实也可以在path里面拼数据也能获取到只是 path拼的数据会存到Object下面的query里面,extra-data专门来传递数据的会存到Object下面的referrerInfo.extraData里;
B小程序代码:
因为开发文档中强调了数据是在App.onLaunch()和App.onShow()中接收;
所以去B小程序app.js中的onLaunch和onShow添加参数options用来接收A小程序传递的值。
App({appData :'';onLaunch: function (options){ this.appData = options },onShow:function (options) { this.appData = options;}})onLaunch和onShow 有其中一个就可以了,这样我们就拿到了A小程序传过来的值了;
接下来去home页从全局获取下刚才的appData。
var App = getApp();Page({ data:{ appData: App.appData //把拿到的值存储起来 }, onLoad: function(options) { var that = this; console.log(that.data.appData) //打印一下看看你是否拿到了A小程序传过来的值 }})注:A、B小程序必须是在同一个公众号下有关联才能做跳转。在手机上进行跳转测试的时候要注意:
如果你在B小程序上增加代码,记得先扫一下B小程序的预览,然后关闭,再从A小程序的预览扫码进去,不然B小程序会一直保存你第一次的数据,不会做更改。
第一次写文章如有不对的地方希望大家多多指正!<-卖萌脸->