uniapp中使用 uni.navigateBack() 返回上级页面并传参的方法
作者:@Kacie
最近遇到这样的需求在A页面中通过跳转到B页面,在B页面中处理的数据,需要跳转回A页面供其使用,本文给大家分享uniapp中使用 uni.navigateBack() 返回上级页面并传参的操作方法,感兴趣的朋友一起看看吧
uni.navigateBack() 返回上级页面并传参
需求:在A页面中通过跳转到B页面,在B页面中处理的数据,需要跳转回A页面供其使用
方法:
- 在B页面的跳转事件中
1.使用 getCurrentPages() 详情见官方文档
获取当前页面栈的实例,以数组形式按栈的顺序给出,第一个元素为首页,最后一个元素为当前页面
2.获得上个页面实例
3.给上个页面实例绑定方法和参数
4.返回上一页面
代码展示:
// 返回A页 goPageA(idx){ // 1. 获取当前页面栈实例(此时最后一个元素为当前页) let pages = getCurrentPages() // 2. 上一页面实例 // 注意是length长度,所以要想得到上一页面的实例需要 -2 // 若要返回上上页面的实例就 -3,以此类推 let prevPage = pages[pages.length -2] // 3. 给上一页面实例绑定getValue()方法和参数(注意是$vm) prevPage.$vm.getValue(this.list) // 4. 返回上一页面 uni.navigateBack({ delta: 1 // 返回的页面数 }) }
在A页面中使用刚刚绑定的getValue()方法接收B页面传递的数据
getValue(list){ console.log(list,'B页面传递的数据') }
到此这篇关于uniapp中使用 uni.navigateBack() 返回上级页面并传参的文章就介绍到这了,更多相关uniapp使用 uni.navigateBack() 返回上级页面内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!