getCurrentPages()
- 应用场景:
- pageA为员工列表页
- pageB为新建员工页
- 从pageA到pageB:
- 如果没有新建员工,直接点击返回按钮,回退到pageA,则不需要刷新数据
- 如果新建员工并成功,则调用wx.navigateBack()的方法,返回到pageA并刷新数据
- !!!不推荐使用wx.navigateTo/wx.redirectTo重新进入到pageA,会增加冗余页面
- 解决方案:
!!!在paegB中
// !!!在paegB中
// 获取当前的页面栈
let pages = getCurrentPages();
// 获取上一级页面,即pageA的page对象
let prevPage = pages[pages.length - 2];
// 获取上一级页面,即pageA的data
let prevPageData = prevPage.data;
// 方法1:设置上一级页面,即pageA的data
prevPage.setData({
isRefresh: true
});
//方法2:也可以直接调用上一级页面,即pageA的方法
prevPage.onLoad();
通过以上两种方法就可以实现啦✌️
貌似在mpvue中,方法1不生效。我使用的是方法2✌️