vue2-父子组件通信

父组件到子组件通讯

父组件到子组件的通讯主要为:子组件接受使用父组件的数据,这里的数据包括属性和方法(String,Number,Boolean,Object, Array ,Function)。vue提倡单项数据流,因此在通常情况下都是父组件传递数据给子组件使用,子组件触发父组件的事件,并传递给父组件所需要的参数。

父组件中引用子组件



父组件向子组件传递数据方法:

1、通过props传递数据

父子通讯中最常见的数据传递方式就是通过props传递数据

        父组件:

    子组件:

props可以接受function,所以function也可以以这种方式传递到子组件使用。

2、子组件通过 $emit调取通过 $on 绑定在父组件的方法

通过$on传递父组件方法是组件通信中常用的方法传递方式。它可以与通过props传递方法达到相同的效果。相比于props传递function,它更加的直观和显示的表现出了调用关系。

        父组件:

        子组件:


父组件获取子组件数据或者function的方法$refs:

尽量避免使用这种方式。因为在父子组件通信的过程中。父组件是处于高位是拥有控制权,而子组件在多数情况下应该为纯视图组件,只负责视图的展示和自身视图的逻辑操作。对外交互的权利应该由父组件来控制。所以应当由父组件传递视图数据给子组件,子组件负责展示。而子组件的对外交互通过$emit触发父组件中相应的方法,再由父组件处理相应逻辑。

父组件


子组件


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

推荐阅读更多精彩内容

  • 知识点: 1、父组件使用props 把数据传给子组件。 2、子组件使用 $emit 触发父组件的自定义事件。 de...
    FredericaJ阅读 195评论 0 0
  • 前言 因为vue2去除了父子组件的双向数据绑定,所以在子组件是不允许修改父组件的属性的,控制台会报如下错误: 解决...
    BrotherWy阅读 3,958评论 1 1
  • 前言 您将在本文当中了解到,往网页中添加数据,从传统的dom操作过渡到数据层操作,实现同一个目标,两种不同的方式....
    itclanCoder阅读 25,969评论 1 12
  • 在vue组件通信中其中最常见通信方式就是父子组件之中的通性,而父子组件的设定方式在不同情况下又各有不同。最常见的就...
    岁月如同马匹阅读 31,616评论 5 40
  • 我用落叶铺就一地寂寞,那上面有我的璀璨年华,有我的泡沫之夏。我伫立其中,闭上眼睛,把自己放在时光里,倾听时光给我讲...
    宁馨儿1106阅读 268评论 0 1