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

1-3 vue组件-父子组件通信

作者: 绣依锐 | 来源:发表于2018-08-27 20:50 被阅读0次

代码链接:https://github.com/yuanxiaorui/vue-study/blob/master/guide/vue%E7%BB%84%E4%BB%B6%E9%80%9A%E4%BF%A101-%E7%88%B6%E5%AD%90%E7%BB%84%E4%BB%B6.html

1、 父组件向子组件通信

props -> 如果我们想使父组件的数据,则必须先在子组件中定义props属性

注意:在子组件中定义prop时,使用了camelCase命名法。由于HTML特性不区分大小写,camelCase的prop用于特性时,需要转为 kebab-case(短横线隔开)。例如,在prop中定义的myName,在用作特性时需要转换为my-name。

 var Child = {
     template:'<div>{{myName}}</div>', 
     props:{ 
        myName:{type: String } 
     } 
 }

 var app = new Vue({ 
     el: '#app', 
     components: { 
         Child 
     }, 
     data: {
         msg: '我是父组件的msg' 
     } 
 })
 <div id="app">
     // 将父组件数据通过已定义好的props属性传递给子组件 
     <Child :my-name="msg"></Child>
</div>

使用$children可以在父组件中访问子组件实例

 //父组件中
 mounted() { console.log(this.$children)}

2、子组件向父组件通信

父组件向子组件传递事件方法,子组件通过$emit触发事件,回调给父组件。

 var Child = {
     template: '<div><button @click="clickEvent"></button></div>',
     data() {
         return { 
             childMessage:'我是来自子组件的message' 
         } 
     },
     methods: {
         clickEvent() {
             this.$emit('getchildmsg',this.childMessage)
         }
      } 
 }
 var vm = new Vue({ 
     el:'#app', 
     components:{ Child },
     methods: {
         getChildMsgFun(msg) {
             console.log('msg:',msg) //我是来自子组件的message 
         }
     }
 })
<child v-on:getchildmsg="getChildMsgFun"></child>

方法二:使用$parent可以从一个子组件访问父组件的实例。

//子组件中:
mounted() {  console.log(this.$parent) }

相关文章

  • Vue相关知识点

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

  • Vue如何实现组件通信?

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

  • Vue事件总线(EventBus)

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

  • vue2中eventbus遇到的坑

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

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

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

  • VUE - EventBus

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

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

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

  • VUE03

    Vue组件 组件的创建 组件的指令以及事件绑定 父子组件创建 父子组件通信 兄弟组件的传值 动态组件

  • Vue组件通信

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

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

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

网友评论

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

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