使用场景:
从A页面跳到B页面,在数据操作后要返回A页面(使用uni.navigateBack()返回),
要求:
携带参数返回A页面,不使用链接带参数返回,不用使用缓存:uni.setStorageSync()储存数据等情况下怎么传递参数
可使用解决方案:
方法一:使用getCurrentPages() 函数获取上一页面栈的实例,可使用$vm调用A页面方法传递参数(h5端可用)文章来源:https://www.toymoban.com/news/detail-719897.html
//A页面
let pages = getCurrentPages();
let prevPage = pages[pages.length - 2]; //上一个页面
prevPage.$vm.backUpdatePages({//调用A页面的backUpdatePages方法传参
isUpdatePages: true
})
uni.navigateBack();
//B页面
methods: {
backUpdatePages(obj){
console.log('===========obj', obj)
}
}
方法二:使用getCurrentPages() 函数获取上一页面栈的实例,A页面的onShow()传递参数(h5端不可用)文章来源地址https://www.toymoban.com/news/detail-719897.html
//A页面
let pages = getCurrentPages();
let prevPage = pages[pages.length - 2]; //上一个页面
prevPage.onShow({//调用A页面的onShow()传参
isUpdatePages: true
})
uni.navigateBack();
//B页面
onShow(option) {
//调用用prevPage.onShow传参,A页面onshow会执行两次,
//第一次调用prevPage.onShow()执行一次会携带参数,
//页面的生命周期onShow执行一次没有参数
console.log('===========option', option)
}
到了这里,关于uniapp,小程序端返回上一页并传递参数的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!