自从用vuepress 2开发OpenAPI平台百家饭以来,按照官方指引,我们一直使用ref函数,在composition api里面创建变量引用。后来陆续了解到shadowref,reactive,shadowreactive函数,就有点分不清楚了,今天争取一篇文章分清楚这几个函数的区别。
| 包含子属性 | 可传入一般类型 | 子属性引用类型 | |
| ref | 包含 | 能 | 统一引用,所有属性共享一个响应对象(一个属性变动,所有用到该应用属性的地方都要更新) |
| shadowRef | 不包含 | 能 | 统一引用,所有属性共享一个响应对象(一个属性变动,所有用到该应用属性的地方都要更新) |
| reactive | 包含 | 不能,只接受objarray | 分别引用,每个属性是一个独立的reactive对象 |
| shadowReactive | 不包含 | 不能,只接受objarray | 分别引用,每个属性是一个独立的reactive对象 |
通常情况下,可以无脑使用ref
查询了多篇文章之后,一个结论是,大部分情况

本文详细探讨了Vue3中的ref、reactive、shadowRef及其区别。大部分场景下,ref是首选,它提供了一致的引用和.value语法,适用于一般类型的响应式需求。然而,当需要对对象的每个属性独立响应或优化性能时,reactive和shadowRef各有用武之地。文章指出,并非所有数据都需要定义为响应式,只有在需要更新界面时才需如此。同时,通过实例展示了何时使用reactive会导致界面不更新的问题。
最低0.47元/天 解锁文章
1488

被折叠的 条评论
为什么被折叠?



