vue父组件数据更新,子组件没有变化。

vue父组件数据更新,子组件没有变化。

 在父子组件传参时,父组件将值传到子组件后,子组件进行数据展示,在第一次传参时可以正常显示,过一段时间后重新赋值,则发现子组件里面数据没有更新,这个时候需要在子组件中加入watch 进行数据监听

示例

父组件


<div :parenData ="datas"></div>

<script>
data(){
  return{
   datas:"1"
 }
},
methods:{
  changeData(){
    this.datas= "2";
 }
},
mounted(){
  let that = this;
  settimeout(()=>{
    that.changeData();
  });
}
</script>

子组件

<div>{{msg}}</div>

<script>
data(){
  return{
    msg:""
  }
},
watch:{
  parentMsg:{
    handler(n,o){ //n为新值,o为旧值;
      this.msg = n;
    }
  }
},
props:["parendData"],
mounted(){
  this.msg = this.parendData;
}


</script>
发布了114 篇原创文章 · 获赞 67 · 访问量 12万+

猜你喜欢

转载自blog.csdn.net/qq_38880700/article/details/101195673