微信小程序wx.navigateBack带参数返回上一个页面

2020-01-08  本文已影响0人  昊哇恰

要想使用navigateBack返回上一个页面携带参数,那么我们需要用到getCurrentPages()这个微信自带的页面栈api,这个api返回一个数组。里面拿到的是页面栈的记录,数组中第一个是首页。


image.png

其实它返回的是页面的this,所以原理就是,在当前页面给要返回的页面中的data设置一个参数,然后我测试过,我们返回那个页面时可以在onshow里面拿到这个值进行处理。
//微信官方提示:
PageObject[] getCurrentPages()
获取当前页面栈。数组中第一个元素为首页,最后一个元素为当前页面。
***注意:
不要尝试修改页面栈,会导致路由以及页面状态错误。
不要在 App.onLaunch 的时候调用 getCurrentPages(),此时 page 还没有生成。
按照这个逻辑 pages[pages.length - 1] 我们拿到的就是当前页
pages[pages.length - 2] 我们拿到的是上一页
//获取上一个页面的this
let pages = getCurrentPages()
var prevPage = pages[pages.length - 2]
//给上一个的data设置一个想要传递的参数
prevPage.setData({
xxxx: 1,
});
//然后我们在上一个页面的onshow 里面就可以拿到这个值

上一篇下一篇

猜你喜欢

热点阅读