美文网首页
vue父子组件通信

vue父子组件通信

作者: 温柔蟹子小龙女 | 来源:发表于2017-12-18 14:28 被阅读0次

1.父组件传递数据给子组件

父组件数据如何传递给子组件呢?可以通过props属性来实现

父组件:

//这里必须要用 - 代替驼峰data(){return{

msg: [1,2,3]

};

}

子组件通过props来接收数据:

方式1:props: [

'childMsg']

方式2 :props: {    childMsg: Array

//这样可以指定传入的类型,如果类型不对,会警告}

方式3:props: {    childMsg: {        type: Array,

default: [0,0,0]//这样可以指定默认的值}

}

2.子组件与父组件通信

子组件:

methods: {

testClick() {this.$emit('test','123');//主动触发test方法,'123'为向父组件传递的数据}

}

父组件:

      //监听子组件触发的test事件,然后调用change方法methods: {

change(msg) {this.msg =msg;  // msg: 123

}

}

3.非父子组件通信

如果2个组件不是父子组件那么如何通信呢?这时可以通过eventHub来实现通信.

所谓eventHub就是创建一个事件中心,相当于中转站,可以用它来传递事件和接收事件.

let Hub=newVue();//创建事件中心

组件1触发:

methods: {

eve() {

Hub.$emit('change','hehe');//Hub触发事件}}

组件2接收:

created() {

Hub.$on('change', () => {//Hub接收事件this.msg = 'hehe';

});

}

相关文章

  • Vue相关知识点

    1、vue父子组件之间的通信 在vue组件通信中其中最常见通信方式就是父子组件之中的通性,而父子组件的设定方式在不...

  • Vue如何实现组件通信?

    Vue组件通信的三种情况: 父子通信 爷孙通信 兄弟通信 父子通信:父组件使用Prop向子组件传递数据,子组件通过...

  • vue组件间通信的一些实用方法(VUE2.x)

    vue组件间通信的一些实用方法(VUE2.x) 一、父子组件间通信 常用的父子组件通信方法,一般涉及props和$...

  • vue2中eventbus遇到的坑

    前言 vue组件非常常见的有父子组件通信,兄弟组件通信。而父子组件通信就很简单,父组件会通过 props 向下传数...

  • Vue事件总线(EventBus)使用详细介绍

    前言 vue组件非常常见的有父子组件通信,兄弟组件通信。而父子组件通信就很简单,父组件会通过 props 向下传数...

  • Vue事件总线(EventBus)

    vue组件非常常见的有父子组件通信,兄弟组件通信。而父子组件通信就很简单,父组件会通过props向下传数据给子组件...

  • VUE - EventBus

    vue组件非常常见的有父子组件通信,兄弟组件通信。而父子组件通信就很简单,父组件会通过 props 向下传数据给子...

  • VUE组件(传值,生命周期)

    VUE生命周期 VUE子传父组件通信 VUE非父子组件传值

  • 09-生命周期及非父子组件间的通信

    一. Vue生命周期 二、生命周期代码 三、非父子组件通信 vue中非父子组件通信需要借助一个空的vue实例,案...

  • Vue组件通信

    Vue 组件之间的通信,通常我们遇到的都是父子组件之间的通信 一、父子组件传参 子组件定义 Props 属性; 父...

网友评论

      本文标题:vue父子组件通信

      本文链接:https://www.haomeiwen.com/subject/pdhmwxtx.html