微信小程序页面之间参数的传递
一:使用全局变量实现数据传递
使用方法,首先在app.js中设置全局使用的变量
//app.js App({ onLaunch: function () { // 登录 wx.login({ success: res => { // 发送 res.code 到后台换取 openId, sessionKey, unionId } }) }, // 全局变量 globalData: { userInfo: null } })
如何对全局变量进行值得设置:
getAPP().globalData.userInfo=value
值的读取:
var info = getApp().globalData.userInfo
二:页面跳转或是重订向时使用URL带参数实现数据传递
如何设置值:
toSomeone: function (event) { wx.navigateTo({ url: 'some/some?id=' + event.target.id, }) }
使用:
onLoad: function (options) { console.log(options) },
参数是对象:
Page({ data: { testData:{name:'username', password:'password'} }, next: function(e){ wx.navigateTo({ url: '/test/test?testData='+JSON.stringify(this.data.testData) }) } })
Page({ data:{ testData:null }, onLoad:function(options){ console.log("接收到的参数是testData="+options.testData); this.data.testData = JSON.parse(options.testData); }})
三:使用缓存实现参数传递
设置:
//缓存数据 wx.setStorage({ key: 'userInfo', data: res.userInfo })
读取:
getUsersInfo: function () { //读取缓存登录 wx.getStorage({ key: 'userInfo', success: function (res) { this.userInfo = res.userInfo; } }) }
浙公网安备 33010602011771号