首页 > 其他 > 详细

vue的props和$emit / 父子组件通信

时间:2019-07-08 15:36:25      阅读:80      评论:0      收藏:0      [点我收藏+]

props

父级:

父级组件中引用子组件,并将自己data下面的giveChild数据绑定在  giveChildData  传给子

 <myChild :giveChildData="giveChild">{{isMe}}</myChild>
技术分享图片

data(){
return{
giveChild:‘222‘
}
},
components:{
  myChild
}
 
技术分享图片

 

子级:

通过props接收父级传来的数据

props:{
      giveChildData:{
         type:String
      }
}

子组件将接收到的数据显示在自身模板中

<div>{{giveChildData}}</div>

效果:

技术分享图片

 

$emit

 子元素上的点击事件成功后,通过 $emit 将事件和数据发射出去

 <div @click="sendChildData">点我将子的数据传给父级</div>
data(){
       return{
         childData:111
       }
     },
methods:{
       sendChildData(){
          this.$emit(‘sendChildData‘,this.childData)
       }
     }

父级:

父级接收到事件后,走自己的事件 getChildData并进行相关处理、显示。

<myChild :giveChildData="giveChild" @sendChildData="getChildData"></myChild>
    <div>这是子级传过来的数据 ——> {{isMe}}</div>
技术分享图片
data(){
      return{
        giveChild:‘222‘,
        isMe:‘‘
      }
    },

    methods:{
      getChildData(data){
        this.isMe = data;
      }
    },
    components:{
      myChild
    }
技术分享图片

效果:子把自己的childData传给了父级

技术分享图片

vue的props和$emit / 父子组件通信

原文:https://www.cnblogs.com/web-chuanfa/p/11151393.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!