Vue组件通信

参考自vue.js 官方文档

如果你使用 Vue 进行开发的话,你不得不了解的一项就是 Vue 的组件(Component)。

组件是 Vue 中一项很强大的功能,它可以扩展 Html 元素,封装可重用代码,减少工作量。

在使用组件开发时的一大问题就是组件之间如何进行通信??如果组件之间不能通信的话,那么它将大大减少的开发效率以及工作乐趣。

Vue 中的组件通信分为 父子组件通信兄弟组件通信 这两大类。

父子组件通信

在 Vue 中,父子组件的关系可以理解为 props向下传递事件向上传递

组件之间的作用域是孤立的,无法直接引用其他组件之内的数据。

如果子组件想要使用父组件内的数据应该如何去做呢??

子组件需要通过 props 来声明预期的数据,而父组件通过直接在子组件内传值的方式将数据传给子组件。

父子组件传值
展示效果

如果你想要动态传值,只需要使用v-bind绑定所传的值。

动态绑定
结果同步更新

兄弟组件通信

有人可能发现为什么父子组件通信中只写了父组件将数据传递给子组件的方法,却没有写如何在子组件中将数据传递给父组件??

因为在子组件中,如果想要把数据传递给父组件,需要用到的方法和兄弟组件通信的方法是一样的。

这个时候就需要用到 Vue 的自定义事件 $on(eventName)$emit(eventName) 来进行监听和触发事件。

监听触发事件
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 组件通信各种情况总结VUE是以数据驱动的MVVM框架,又是模块化开发,所以各个组件间的通信传递数据非常重要,在项目...
    流年_338f阅读 592评论 0 2
  • vue 组件通信分为父组件与子组件通信、子组件与父组件通信、非父子关系组件通信三种 第一种大家都知道用props,...
    lyn911阅读 2,220评论 0 0
  • 前言 本文主要说明Vue的核心内容---组件间的通信。文中将使用几个栗子来了解,本文示例基于Vue2.0。 父子组...
    yimi珊阅读 1,412评论 0 2
  • 1) 父组件给子组件传值 利用Vue的组件机制,父亲组件通过 v-bind指令给子组件绑定一个属性,属性值为父组件...
    小枫学幽默阅读 566评论 1 7
  • 一看到#陈思诚 佟丽娅#上热搜,小编掐指一算,立马就知道事情来了。 事情是这样的,陈思诚在零点送祝福给佟丽娅,配文...
    潮流一起说阅读 372评论 0 0