微信小程序页面之间参数的传递

一:使用全局变量实现数据传递

使用方法,首先在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;
      }
    })
  }

 

posted on 2022-08-08 18:04  马玉豪  阅读(3779)  评论(0)    收藏  举报

导航