vue的观察者,不会对对象的属性进行冒泡监听

来源:互联网 发布:js 提交表单 jquery 编辑:程序博客网 时间:2024/05/17 22:35
有很多时候,会对vue的对象进行watch监听,当其发生改变的时候,执行某段方法,现在在这里有一个监听冒泡的事件。
例如对象obj:{a:1,a,2}
如果我们对obj进行监听,当我们这样赋值
    this.obj=2,watch是可以监听到的。
但是,当对其属性改变的时候
 this.obj.a=2,watch是监听不到的。
这个情况,说明,object.
defineproperty的get和set是不会冒泡的。
如果需要对this.obj整个进行监听.. - - 暂时只能想到深拷贝。
思维拓展一下。如果某些情况,数据更新了,但是没有更新视图,会不会是因为监听不冒泡的原因?例如arr[]这种形式的数据绑定?

如果包一层computed的话,是可以监听到对象内部的变化。


原创粉丝点击