小程序 - 子级页面返回父级,并把子级参数带回父级
(小的资深尚浅,不足的地方欢迎提bug,勿喷!!!)
说到页面之间的跳转,跳转中顺带些参数,在程序猿的生活中是很常用的,下面就让我们来看看吧!
这里有两种方法来解决:
方法一
就是我们常用的本地储存,在当前子级页面用( wx.setStorage || wx.setStorageSync )储存好,跳转到父级页面的时候取出,采用( wx.getStorage || wx.getStorageSync ),在这里,退出的时候一定要记得清除缓存哦!!!( wx.clearStorage || wx.clearStorageSync )
方法二
方法二就要用到我们小程序的知识了
var pages = getCurrentPages(); // 获取页面栈 var currPage = pages[pages.length - 1]; // 当前页面 var prevPage = pages[pages.length - 2]; // 父级页面(返回上个页面) // 以此类推 pages.length - n prevPage.setData({ address: 6666 })
以上是设置父级页面 data 里的 address 为6666,想带什么,setData 里放什么
最后,返回上级(父级)页面
wx.navigateBack({ delta: 1 // 返回的页面数量 })
方法三:
这个方法就是通过全局变量来获取,在 app.js 中设置全局变量,在当前子级页面赋值,返回父级后,取值即可
globalData: {
key: value,
}
注意:(建议)
方法一、方法二的父级在 onShow 生命周期里执行
onShow: function () { // 执行内容 }
address