继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Vue2.x之父子组件数据传递

zhangfl_go
关注TA
已关注
手记 40
粉丝 28
获赞 163

父传子,并且通过fatherEvent接收子组件传过来的值

<template>
    <div class='father'>
        <Son :fatherData="fatherData" @fatherEvent='getSonMsg' />
     </div>
</template>import Son from './Son';
export default{
data(){return{
  fatherData:{
    msgData:"我是父亲"}  
},
components:{
Son
},
methods:{
getSonMsg(msg){
    console.log(`这是从子组件传来的msg${msg}`)
}
}

子组件接受父组件消息,并通过$emit回传父组件(当然也可以不通过watch)

<template>
    <div class='son' >{msg}        <button @click='fatherEmit'></button>
    </div>
</template>
 <script>export default(){
name:"son',
props:{
    fatherData:Object
}
data(){
return{
msg:""}
}
},
watch:{
fatherData:function(newValue,oldValue){
  this.changeData()
}
},
methods:{
changeData(){
this.$nextTick(function(){
this.msg = this.fatherData.msgData
}
}),
fatherEmit(){
this.$emit('fatherEvent','我是额子')
}
}

</script>


打开App,阅读手记
5人推荐
发表评论
随时随地看视频慕课网APP