推荐方法
传递页面
// 1. 获取当前页面栈实例(此时最后一个元素为当前页)
let pages = getCurrentPages()
// 2. 上一页面实例
// 想要得到上一页面的实例需要 -2
// 返回上上页面的实例就 -3,以此类推
let prevPage = pages[pages.length -2]
// 3. 给上一页面实例绑定getUser()方法和参数(注意是$vm)
prevPage.$vm.getUser(this.data)
// 4. 返回上一页面
uni.navigateBack({
delta: 1 // 返回的页面数
})
接收页面,返回的页面
getUser(data){
console.log('接收到的参数',data)
}
emit传递 on 接收
问题:接收时会重复接收,即函数会执行多次。很多情景下会出问题。
传递页面
uni.$emit('getuser', this.userListAdd22)
uni.navigateBack({
option: 1,
});
接收页面,返回的页面
onShow() {
uni.$on('getuser',function(data){
console.log('监听到事件来自返回的参数:' , data);
})
},