前端使用Bus组件进行跨组件传值

bus.js

import Vue from 'vue'
const Bus = new Vue()
export default Bus

使用时要引用Bus

import Bus from 'bus.js'
this.$nextTick(()=>{//解决第一次·触发$emit无效的问题
Bus.$emit('data',123)
})
beforeDestroy(){
//销毁监听事件
Bus.$off('data')
}
//显示模态框并更新组件绑定表单数据  要放在mounted里面哦
Bus.$on('data',(data)=>{
     this.datamate=data;
})
//但是在使用过程中发现一个问题,信息接收端能够接收到传递的信息,但是无法被信息接收端使用,接收端的代码如下:
//修改代码,将this改成bus,然后再次赋值给信息接收端的data便可以了
 bus.$on('data',function(url){
                bus.data= url;
 });
this.datamate= bus.data;

版权声明:本文为m0_49515138原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。