Vue 3 的响应式建立在 JavaScript Proxy 之上。当你将状态变为响应式时,Vue 会用一个 Proxy 将其包裹,从而拦截读取和写入,让它能够追踪哪些 effect 依赖于哪些属性,并在数据变化时触发这些 effect 重新运行。
核心机制:读取时追踪(track),写入时触发(trigger)
js
() {
(target, {
() {
(obj, key);
obj[key];
},
() {
obj[key] = value;
(obj, key);
;
},
});
}
