为什么vue3不再使用Object.defineProperty的方式定义完成数据响应式,而是使用Proxy

除了Proxy本身效率比Object.defineProperty更高之外,由于不必递归遍历所有属性,而是直接得到一个Proxy(代理对象)。所以在vue3中,对数据的访问是动态的,当访问某个属性的时候,再动态的获取和设置,这就极大的提升了在组件初始阶段的效率。

同时,由于Proxy可以监控到成员的新增和删除,因此,在vue3中新增成员、删除成员、索引访问等均可以触发重新渲染,而这些在vue2中是难以做到的。

posted @ 2021-10-09 17:46  小不懂儿  阅读(419)  评论(0)    收藏  举报