在开发过程中,有时候会需要去下一级页面处理数据,然后携带数据返回上一页。
1.首先是在下一级页面中。获取页面栈,并找到上一个页面。调用上一个页面的setData,将数据保存。
//获取页面栈
let pages = getCurrentPages();
//获取所需页面
let prevPage = pages[pages.length - 2]; //上一页
// 将数据保存到上一页
prevPage.setData({
name:"张三"//你需要传过去的数据
});
wx.navigateBack({
delta: 1,
})
2.在上一级页面onShow中获取数据
//获取页面栈
let pages = getCurrentPages();
// 当前页
let currPage = pages[pages.length - 1];
// 下一级页面传递上来的数据
console.log(currPage.data.name); // 张三
也可以利用wx.setStorageSync或者app.js中的globalData来保存下一级页面需要返回给上一级页面的数据