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

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

使用方法,首先在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   马玉豪  阅读(3748)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)
点击右上角即可分享
微信分享提示