关于子组件this和$emit问题
来源:4-5 非父子组件间的传值
即墨火未燃
2018-05-10
请问下子组件里点击事件中这个this指什么呢?为什么不加.bus,直接this.$emit()传递给的就是父组件,父组件就可以通过监听来触发事件,但加了this.bus.$emit()就不能传递给父组件了?加了bus是传到了哪里呢?为什么全局组件里通过钩子生命周期函数里的this.bus就能监听到了?感觉这节听的有点懵
写回答
2回答
-
Dell
2018-05-10
这节课实际上是js的精髓,通过事件驱动数据传递,我建议你自己看一些发布订阅,观察者模式的文章,然后回来再反复听几次,就有感觉了
112018-05-11 -
慕斯卡7361223
2018-05-10
子组件的的this指的时子组件本身,通过proptype把所有的vue都有了bus属性,所有的vue都可以调用这个属性,同时这个bus属性是个new Vue(),所以有$emit()事件,通过此次挂载,实现非父子组件之间的事件触发,实现传值的目的
10
相似问题