- 从定义数据角度对比:
- ref 用来定义:基本类型数据
- reactive 用来定义:对象(或数组)类型数据
- 备注:ref 也可以用来定义 对象(或数组)类型数据,它内部会自动通过 reactive 转为 代理对象
- 从原理角度对比:
- ref 通过 Object.defineProperty() 的 get() 与 set() 来实现响应式(数据劫持)
- reactive 通过使用 Proxy 来实现响应式(数据劫持),并通过 Reflect 操作 源对象 内部的数据
- 从使用角度对比:
- ref 定义的数据:操作数据 需要 .value,读取数据时模板中直接读取 不需要 .value
- reactive 定义的数据:操作数据与读取数据:均不需要 .value
vue3 中的 reactive 和 ref 的对比
于 2022-03-13 00:34:26 首次发布