exercises.md 992 字节
Newer Older
Z
zhaoss 已提交
1 2
# 非父子组件通讯

Z
zhaoss 已提交
3
 <div style="color: pink;font-size:22px;font-weight:700">小常识:</div>
Z
zhaoss 已提交
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
<br>

**原理:**<br>
> 通过一个Vue实例来传递数据

const bus =new Vue()

**核心逻辑:**<br>
>组件A给组件B传值: 
>1. 组件A给bus注册一个事件,监听事件的处理程序 
>2. 组件B触发bus上对应的事件,把 值当成参数来传递
>3. 组件A通过事件处理程序获取数据
>



下列关于非父子组件通讯描述正确的是?<br/><br/>

## 答案

Z
zhaoshuangshi 已提交
24
eventBus其实就是A组件给eventBus注册一个事件,监听事件的处理程序,B组件通过触发eventBus上的事件并将要传递的值作为参数传递,A组件通过事件处理程序获得数据。
Z
zhaoss 已提交
25 26 27 28 29 30 31 32 33

## 选项

### A

eventBus是非父子组件通讯唯一方式。

### B

Z
zhaoshuangshi 已提交
34
非父子组件之间进行通讯势必会造成内存泄漏,一般我们通过将非父子组件转化成父子组件在进行通讯。
Z
zhaoss 已提交
35 36 37

### C

Z
zhaoshuangshi 已提交
38
VueX 并不能解决非父子通讯问题。