微信小程序实现页面B返回页面A并刷新页面A的数据:
①需求:前端开发过程中常常有这样的需求,从A页面跳转到B页面,在B页面改了某些状态,返回A页面时期望A页面产生更新的操作:
②思路:一开始我的想法是在A页面onShow的时候编写更新操作,但这样只要A页面展示就更新,耗性能。
有没有一种方法可以在B页面更新时才执行A页面的方法更新,这样就达到了我们的要求。再网上果然找到了。方法如下:
var page = getCurrentPages(); 1. 获取页面栈
var beforePage = pages[pages.length - 2]; 2.获取到页面A的页面栈信息
假设initial()为页面A的数据方法,
使用 beforePage.initial() ;即可刷新页面A的数据,再使用navigateBack返回上个页面(页面A)
UpdateNavigationBack(){
let page = getCurrentPages() ;
let beforePage = pages[pages.length - 2];
beforePage.initial() ; //initial()为页面A的方法
wx.navigateBack({ //(返回页面A)
delta: 1
})
},
页面B返回页面A并实现刷新数据就完成了!!!