简单粗暴解决$emit第一次传值不成功问题

兄弟页面间传值用 e m i t 发 送 , emit发送, emiton接收,但是如果是跳转页面,A页面发送数据跳转到B页面时候,B页面未创建所以所以发送不了数据,因此可以简单粗暴延时发送数据,等B页面创建完就能监听到数据。
A页面发送

ksxj:function(data){
//延迟1semit发送数据setTimeout(function(){uni.$emit('page-popup',data);},1000)
}

B页面接收

onLoad:function(){
uni.$on('page-popup', (data) => {  console.log(data);}) 
}

B页面销毁前销毁监听,要不然会重复数据

beforeDestroy(){//数据一定要销毁要不然多次触发uni.$off('page-popup');
}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部