vue会对data中的值进行处理,如果在template中使用到了,就会对这个值进行setter和getter处理,等于就是添加到了watch一样,当数据发生变化时,就会触发的方对应的getter、setter方法,方法针对性的更新。

这个setter和getter的绑定触发,是必须现在data预设好才行,否则vue都运行完毕了再进行添加,是无法响应式更新的。

也就是说。vue的响应式更新,他只能监听你一开始就预设好的值,如果你是后面再手动添加的,是无法检测到的,也就无法进行更新。

比如:

data(){
  return {
    obj:{}
  }
}

有一个obj的空对象

我们手动给他附加一个值

this.obj.number = 1;

这个并不会触发vue的响应式更新。

这样才行

data(){
  return {
    obj:{
      number:undefined
    }
  }
}
this.obj.number = 1;
分类: vue 开发实战 标签: vue响应式更新监听

评论

暂无评论数据

暂无评论数据

目录