Vue_非父子组件间的传值(Vuex和发布订阅模式)

我们知道父子组件之间的传值,父向子用props传值,子向父用自定义事件传值,那么肥父子组件的传值如何实现?比如说1和3 ,3和3之间?
这里写图片描述
通常来说,非父子组件的传值方法有两种。
一是用Vue的数据层框架vuex,二是使用总线机制(发布订阅模式、Bus、观察者模式)来解决非父子组件传值的问题。

Vue.prototype.bus = new Vue();

创建Vue实例的时候,每一个组件都会有bus这个属性,为什么呢?因为每一个组件(实例)都是通过Vue类来创建的,而我们在Vue类的prototype上挂在了一个bus的属性。
所以我们创建的每一个实例都会带有bus属性,它都指向同一个实例。
这里写图片描述
这里写图片描述

猜你喜欢

转载自blog.csdn.net/hani_wen/article/details/80804236
今日推荐