企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
### vue2响应式 vue2中采用了defineProperty,把数据定义成了响应式数据 缺点: 1. 响应式数据要递归,嵌套过深会导致性能消耗大 2. 数组没有通过definePropery劫持,而是改写了7种修改原数组的方法 3. defineProperty 主要劫持了它的 get 和 set的同时使用了一个发布订阅的设计思路,get的时候会new 一个 Dep类,如果此时有watcher,就会把watcher收集起来,放到dep里面,后续修改数据的时候会触发set,set会触发dep对象的发布方法,触发watcher上的回调函数,修改响应节点的视图 ### vue3响应式 1. 采用了proxy直接对对象进行一个代理,不用重写get和set方法,性能高,不需要递归 2. 对数组并没有代理