Vue响应式
原理
Proxy
与Object.defineProperty
Proxy
Proxy
将代理一个对象(被代理对象),得到一个新的对象(代理对象),同时拥有被代理对象中所有的属性。- 当想要修改对象的指定属性时,我们应该使用代理对象进行修改
- 代理对象 的任何一个属性都可以触发
handler
的getter
和setter
Object.defineProperty
Object.defineProperty
为指定对象的指定属性设置属性描述符- 当想要修改对象的指定属性时,可以使用原对象进行修改
- 通过属性描述符,只有 被监听 的指定属性,才可以触发
getter
和setter