微信小程序如何利用getCurrentPages进行页面传值

2019-11-09,,,

最近刚赶完项目,利用空闲时间总结一下。

小程序的页面间传值 , 之前处理这种例如 a页面跳转b页面,在b页面进行一波操作 回到a页面 都是把b页面的操作的数据存到本地存储

wx.setStorageSync("b_data","b页面的数据")

在a页面是这样的

wx.getStorageSync("b_data")

但是这种方法怎么说呢 不利于操作 还会导致storage里面的数据非常混乱过一段时间鬼知道是什么,操作也麻烦 总之就是略low

后台研究这个事 发现小程序的官方文档有一个获取 获取当前页面栈。数组中第一个元素为首页,最后一个元素为当前页面。--getCurrentPages()

然后好玩的事来了 你可以在b页面获取a页面的数据 更神奇的是可以直接调用上个页面的setData方法 直接操作上个页面的数据

例如这样

let pages = getCurrentPages(); // 获取当前页面栈
let prevPage = pages[pages.length - 2]; // -2 就是你上一页的数据 你上上页的数据就是-3 了以此类推!
// 直接操作上一个页面的 index数据 之后返回 
prevPage.setData({
index:index
},function(){
wx.navigateBack()
})

简单明了!好用且强大!另外还一个小技巧吧 在开发的时候有一个这样的需求 要求后台生成小程序码,用微信扫描小程序码带参数进入一个页面 但是生成的小程序码是线上的正式版本 但是小程度还没有上线 没有办法调试 解决方案来了 ,注意,前方高能------------->

自行实验哦~~~

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持北冥有鱼。

您可能感兴趣的文章:

  • 微信小程序文字显示换行问题
  • 微信小程序动画(Animation)的实现及执行步骤
  • 微信小程序onLaunch异步,首页onLoad先执行?
  • 微信小程序中上传图片并进行压缩的实现代码
  • 微信小程序实现指定显示行数多余文字去掉用省略号代替
  • 微信小程序中进行地图导航功能的实现方法
  • 微信小程序 行的删除和增加操作实现详解

《微信小程序如何利用getCurrentPages进行页面传值.doc》

下载本文的Word格式文档,以方便收藏与打印。