由于单向数据流的设计思想,在Vue2.x中,已经不支持$dispatch, $broadcast了。spa
可是Element实现了一个弱化版的父子组件间通讯方法,从新实现了一次$dispatch, $broadcast。.net
https://jsfiddle.net/huang_ju...设计
讲一下实现思路吧code
vm.$parent
属性,找到父组件。而后经过vm.$options
获取自定义属性componentName, 与调用时传入的参数作一个对比,来判断是不是须要响应的父组件vm.$children
,遍历子组件,而后经过vm.$options
获取自定义属性componentName, 与调用时传入的参数作一个对比,来判断是不是须要响应的子组件能够用来在组件中自定义属性的时候,经过实例属性vm.$options
来获取。component
这个属性能够和vm.$root
结合使用。ip
获取子组件的实例属性。get
经过自定义组件通讯it
了$parent,$options,$children
的使用