vuejs 中 ref 和 reactive 之间最重要的区别是什么?
What are the most important differences to note between ref and reactive in vuejs?
最近学习了vuejs,似乎无法完全掌握ref和reactive用法的本质区别。什么时候使用 ref 或 reactive 是正确的?
根据Anthony Fu(Vue.js冠军)的this article,我们可以总结为以下几点:
- refs 被视为原始值
- 反应对象
- refs 仅由
.value
属性 突变,但对任何嵌套的 属性 有反应
- 反应物看起来像普通物体
- 反应性对象有一些注意事项,例如在它们被破坏时会失去反应性。
- 响应式对象在像
watch(()=>reactiveObj,(newVal,oldVal)....
一样被观看时应该用函数包装,不像 refs 是未包装的 watch(refProp,(newVal,oldVal)....
结论:
I’d say go with ref
whenever you can
最近学习了vuejs,似乎无法完全掌握ref和reactive用法的本质区别。什么时候使用 ref 或 reactive 是正确的?
根据Anthony Fu(Vue.js冠军)的this article,我们可以总结为以下几点:
- refs 被视为原始值
- 反应对象
- refs 仅由
.value
属性 突变,但对任何嵌套的 属性 有反应
- 反应物看起来像普通物体
- 反应性对象有一些注意事项,例如在它们被破坏时会失去反应性。
- 响应式对象在像
watch(()=>reactiveObj,(newVal,oldVal)....
一样被观看时应该用函数包装,不像 refs 是未包装的watch(refProp,(newVal,oldVal)....
结论:
I’d say go with
ref
whenever you can