# 非父子组件通讯  
小常识:

**原理:**
> 通过一个Vue实例来传递数据 const bus =new Vue() **核心逻辑:**
>组件A给组件B传值: >1. 组件A给bus注册一个事件,监听事件的处理程序 >2. 组件B触发bus上对应的事件,把 值当成参数来传递 >3. 组件A通过事件处理程序获取数据 > 下列关于非父子组件通讯描述正确的是?

## 答案 eventBus其实就是A组件给eventBus注册一个事件,监听事件的处理程序,B组件通过触发eventBus上的事件并将要传递的值作为参数传递,A组件通过事件处理程序获得数据。 ## 选项 ### A eventBus是非父子组件通讯唯一方式。 ### B 非父子组件之间进行通讯势必会造成内存泄漏,一般我们通过将非父子组件转化成父子组件在进行通讯。 ### C VueX 并不能解决非父子通讯问题。