在写微信小程序时有个功能有点问题
需求是,在当前页面(A页面)查看列表,在A页面点击发布跳转到表单页(B页面)。B页面提交成功返回上一页A,要判断如果发布成功,返回到A页面得拿到最新数据(相当于要监听返回到A页面时得刷新数据了)
方法一:
使用onshow的生命周期,但是这个有个缺点,就是因为A页面是有下拉刷新的功能,如果在onshow调用的话,当用户下拉,onshow里的方法会被调用1次。这样导致页面的数据重复了
方法二:
使用getCurrentPages方法拿到上一页的内容。当在B页面返回时调用A页面的getlist()方法。
A页面
getlist(){
//被调用的方法
}
B页面
let pages = getCurrentPages(); // 当前页面
let beforePage = pages[pages.length - 2]; //上一个页面
uni.navigateBack({
success: function() {
beforePage.$vm.getlist();
}
})
B页面编辑成功后调用上一个页面方法
案例截图


在微信小程序中,从B页面提交表单成功后返回A页面需要获取最新数据。方法一是利用onshow生命周期,但会导致下拉刷新时重复调用。方法二是通过getCurrentPages获取上一页实例并调用其getlist()方法。在B页面的navigateBack成功回调中执行此操作。
&spm=1001.2101.3001.5002&articleId=130728011&d=1&t=3&u=9e84184a5b7b434db6d21619fbf9161a)
5977

被折叠的 条评论
为什么被折叠?



