简单粗暴解决$emit第一次传值不成功问题
兄弟页面间传值用 e m i t 发 送 , emit发送, emit发送,on接收,但是如果是跳转页面,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');
}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
