vue3中ref和reactive的区别
ref 和 reactive 都是用来定义响应式数据的。
1 2 3 4 | ref允许我们创建一个任意类型的响应式的ref对象,在使用时需要带上.value 在模板中使用ref对象时,假如ref位于顶层,就不需要使用value,它会自动解包 但如果ref对象是作为一个属性声明于对象之中,在模板中进行运算时仍然要使用.value |
1 2 3 4 | 通常使用reactive()来创建一个响应式的对象或数组,这样的对象或数组状态都是默认深层响应式的,无论嵌套多深,都能跟踪到。 但他也有局限性,就是只对 对象类型有效,对基本数据类型无效 并且假如用一个新对象替换了原来的旧对象,那么原来的旧对象会失去响应性 |
两者区别:
1、ref多用来定义基本数据类型(也可以定义对象,内部会自动通过reactive转为代理对象),而 reactive只能用来定义对象数组类型
2、ref操作数据需要.value,reactive操作数据不需要.value
3、ref通过Object.defineProperty()的get和set来实现响应式, reactive通过Proxy来实现响应式,并通过Reflect操作源对象内部的数据
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· 地球OL攻略 —— 某应届生求职总结
2021-12-08 uniapp中组件属性设置不生效的解决方案
2018-12-08 URL基本结构
2018-12-08 http常用状态码