小程序页面数据回传

小程序页面回传两种方法。

1、使用全局数据储存

  一种是把数据储存在App对象上

//=== 1. 存储到app对象上的方式 ========
var app = getApp()
app.globalData.mydata = {a:1, b:2};  //存储数据到app对象上
wx.navigateBack();  //返回上一个页面

 

  一种是把数据储存在缓存中

//=== 2.存储到数据缓存的方式 =========
wx.setStorage({
  key: "mydata",
  data: {a:1, b:2},
  success: function () {
    wx.navigateBack();   //返回上一个页面
  }
})

 

但是这样的缺点显而易见,不仅占内存,而且还容易出错,书写还麻烦,有些功能很不好实现。

2、从页面路由栈中直接获取和操作目标Page对象

使用getCurrentPages()用来获取页面路由栈信息,这个路由栈信息中用数组储存着相应page对象,这个方法调用就很容易了。

var pages = getCurrentPages();
var currPage = pages[pages.length - 1];   //当前页面
var prevPage = pages[pages.length - 2];  //上一个页面

//直接调用上一个页面的setData()方法,把数据存到上一个页面中去
prevPage.setData({
  mydata: {a:1, b:2}
})

 

posted on 2019-01-07 10:56  买辣椒也用券 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/Juaoie/p/10231997.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值