核心是按需响应而非全量劫持:用 shallowref/shallowreactive 控制响应深度,冻结静态数据,拆分计算与副作用,主动清理失效依赖。

核心思路是让响应式系统“少干活”——不是删数据,而是控制哪些数据该进响应式、哪些不该进,以及进之后怎么被追踪。
用 shallowRef / shallowReactive 替代 deep 响应式
深层嵌套对象默认会触发 Proxy 递归代理,每一层访问都可能触发 track,造成依赖层层挂载。对只读或仅需顶层响应的场景,直接降级:
- shallowRef:ref 的值本身响应,但内部属性不响应(适合存大型 JSON、配置对象)
- shallowReactive:仅代理第一层属性,嵌套对象/数组保持原始状态(适合表格行数据、表单字段集合)
- 注意:修改 shallow 对象的嵌套属性不会触发更新,需配合 triggerRef 或手动调用 update 才能刷新视图
冻结无需响应的数据结构
静态列表、枚举、字典类数据一旦初始化就不再变更,完全没必要参与依赖收集:

