最近项目功能实现上遇到需要实现A页面点击事件跳转到B页面,在B页面点击获取信息后返回A页面,一开始不知道怎么传参返回,尝试着将需要传递的数据放入缓存获取,但是随之而来的是返回上一页面的数据刷新问题,以及功能逻辑后续实现上不够优雅方便,最后在网上查看了各路大佬的思路想法后自己调用实现的如下方法:
let pages = getCurrentPages(); //获取所有页面栈实例列表
let nowPage = pages[ pages.length - 1]; //当前页页面实例
let prevPage = pages[ pages.length - 2 ]; //上一页页面实例
prevPage.$vm.adata= this.bdata; //修改上一页变量adata为当前页面bdata的值
uni.navigateBack({ //uni.navigateTo跳转的返回,默认1为返回上一级
delta: 1
});
代码详细标注如上,通过此方法可以在B页面直接给A页面的变量修改或赋值,这样也能实时刷新到页面上,算是一个更优的方案,如果有小伙伴有更加简便优雅的写法,欢迎探讨,希望这篇文章对您有帮助。