微语 微语:代码适合中午敲,早晚出BUG

vue 组件通信传递参数(任意组件传递) Vue

1.main.js 中创建一个总线挂载到vue实例原型上,利用Vue实例作为中央事件总线,来触发和监听事件。实现父子、兄弟、跨级之间的通信

Vue.prototype.$bus = new Vue()

2.发送信息的组件用$emit方法,需要传入2个参数,参数一:传递的名字,参数二:传递的数据

this.$bus.$emit("sendImg", data);

3.接收参数的组件 用$on方法来接收,传入参数2个,接受参数名字,参数二:回调函数

 this.$bus.$on('sendImg',(val)=>{
            console.log(val)
        })

总结: 创建一个中央事件总线挂到vue原型上, 这个名称可以自定义,一般都是$bus,然后传递的时候,通过$emit方法,接收的时候通过$on方法。