【uniapp】uniapp返回上一页,并实现刷新界面数据
在uniapp中,经常会有返回上一页的情况,官方提供有 uni.navigateBack 这个api来实现效果,但是此方法返回到上一页之后页面并不会自动刷新(不会触发上一页的onLoad()方法)。
·
在uniapp中,经常会有返回上一页的情况,官方提供有 uni.navigateBack 这个api来实现效果,但是此方法返回到上一页之后页面并不会自动刷新(不会触发上一页的onLoad()方法)。
使用场景
从一个列表界面点击新增按钮,进入新增元素的界面,然后新增之后返回列表界面,并刷新列表界面。
效果实现
元素新增界面的代码:
if (res.code === 200) {
const pages = getCurrentPages();
const prevPage = pages[pages.length - 2]; // 上一个页面
uni.$u.toast('操作成功');
setTimeout(() => {
uni.navigateBack({
delta: 1,
success: () => {
prevPage.$vm.getList(); // 直接调用上个页面的刷新方法
}
});
}, 1000);
} else {
uni.$u.toast(res.msg);
}
列表界面的代码
async onLoad() {
await this.getList(); // 自定义的刷新函数
},
利用获取页面栈 getCurrentPages() 方法, 在使用uni.navigateBack()返回成功后调用 beforepage.$vm.需刷新方法 即可完成返回并刷新。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐
所有评论(0)