Vue组件通信的几种方法

vue

上一节说到,vue.js是允许子组件通过props接受父组件的信息,但是不允许父组件通过props接受子组件的信息

当子组件需要向父组件传递数据时,就要用到自定义事件。
使用观察者模式,子组件用 $emit()来触发事件,父组件用 $on()来监昕子组件的事件 。

更常用的是: 父组件也可以直接在在子组件自定义标签上使用v-on来监听子组件触发的自定义事件。

2. bus:兄弟组件和跨多级组件通信

推荐使用一个空的 Vue 实例作为中央事件总线( bus )

3. this.$parent 可以直接访问该组件的父组件,父组件可以通过this.$children访问他所有的子组件,还可以使用ref来定义子组件的索引

**

设计原则:

子组件应该尽可能地避免依赖父组件的数据,更不应该去主动修改它的数据.

父子组件最好还是通过props 和 $emit 来通信。

**

4. 更好的状态管理解决方案vuex

以上是 Vue组件通信的几种方法 的全部内容, 来源链接: utcz.com/z/374705.html

回到顶部