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

vue子父组件通信

作者: 心若彩虹_a484 | 来源:发表于2018-11-28 11:39 被阅读0次

子父组件传递数据

  1. 父组件===》子组件。父组件通过props向子组件中传递数据和改变数据的函数,通过在子组件中调用父组件传过来的函数,达到更新父组件数据(向父组件传递数据)的作用(子组件中需要有相应的响应事件).

  2. 子组件===》父组件。通过在子组件中触发一个 自定义事件(vm.emit),将数据作为vm.emit方法的参数,回传给父组件用v-on:[自定义事件]监听的函数.如:

<!--父组件  -->
<template>
  <div class="container">
      <child-template @toggleFn="myToggle"></child-template> <!--子组件 -->
    </div>
</template>
myToggle(params ){
  console.log(params);
}

<!--子组件 --> 
<template>
  <div class="container">
      <div @click="toggle">点击子组件</div>
    </div>
</template>
toggle(){
let params = "传递参数";
  this.$emit("toggleFn",params)
}

3.通过ref对子组件做标记,父组件可以通过this.﹩refs.[子组件的ref].[子组件的属性/方法]这种方式直接取得子组件的数据或者调用方法
如this.﹩ref.mark.data ,this.﹩ref.mark.fun();

父子组件实时传递数据

1.父组件通过通过props 给子组件传递对象 数据,子组件再以函数的形式接收,当子组件数据改变时,父组件也会相应改变,如:

<!--父组件  -->
<template>
  <div class="container">
      <child-template :data="myData"></child-template> <!--子组件 -->
     {{myData.name}}
  </div>
</template>
data() {
    return {
      myData:{
          name:"小明"
     }
   }
}

<!--子组件 -->
<template>
  <div class="container">
      <div @click="toggle">{{data.name}}</div>
    </div>
</template>

export default {
    props: {
        data: {
            type: Object,
            default: () => {}
         },
    },
    data() {
        return {
            name:小刚,
        }
    },
    methods:{
        toggle(){
            data.name = name;
        }
    }
}

相关文章

  • vue组件通信(传值)

    1.父子通信 1.父组件(parent.vue) 子组件(child.vue) 2.子父通信 1.子组件(chil...

  • 【Vue】组件通信(任意通信)

    本节所需的基础知识: 【Vue】组件通信(父传子props) 【Vue】组件通信(子传父$emit) 任意组件相互...

  • Vue之数据通信

    Vue 如何实现组件通信?①父组件向子组件通信(props:['属性名']) 给父组件中的子组件标签绑定属性,然后...

  • Vue组件通信方式

    本文主要介绍关于Vue组件通信的四种方式,分别是父向子组件通信、子向父组件通信、非父子组件的EventBus通信、...

  • vue、react对比

    一、父子通信 1. 父组件通过props向子组件传值 vue:父组件 子组件接收 react:父组件: 子组件: ...

  • vue组件之间通信

    vue 组件之间通信 vue组件之间通信方式: 1.父组件通过props向下传数据给子组件,子组件通过$emit事...

  • 2018.04月面试题

    vue相关: 1.组件之间的通信 父组件传给子组件用props子组件向父组件通信用$emit具体参照:https:...

  • Vue父子组件通信

    全面学习Vue 组件通信父组件给子组件传值 props 父组件 子组件 props: { mn...

  • Vue 组件 / 通信

    子组件=》父组件 vue的组件之间的通信类似angular的父子层级之间通信,父组件获取子组件数据步骤大概如下: ...

  • vue组件通信,中央事件总线

    vue 组件通信分为父组件与子组件通信、子组件与父组件通信、非父子关系组件通信三种 第一种大家都知道用props,...

网友评论

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

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