Vue3中ref和reactive的区别

ref既可以实现基本类型的响应式也可以实现对象或者数组类型的响应式,但是需要在变量后加一个value来修改对应的值才可以生效

reactive只能用来实现对象或者数组等类型的响应式,且如果对整个对应进行重新赋值,则响应式会失效,可以通过Object.assign()来实现响应式,具体如下

javascript 复制代码
    let gg=reactive({address:'山西'})


    function updategg(){
      //响应式不生效
      gg={address:"wwwww"}
      //生效,该方法会把后边的对象的参数一个一个追加到第一个指定的对象中
      Object.assign(gg,{address:"wwwww"})

    }

各自的应用场景:

  1. 如果是基本数据类型就用ref
  2. 如果是没有那么深的对象或者数组,那么ref和reactive都可
  3. 如果是深的对象或者数组建议使用reactive

插件介绍:

我们在使用vite新建vue3项目时刚进入vscode会让你安装两个插件

第一个插件一个功能,当我们在使用ref时,调用其修饰的变量时,可自动帮我们生成.value方法,具体的使用方式如下图,勾选即可

相关推荐
Cache技术分享4 分钟前
258. Java 集合 - 深入探究 NavigableMap:新增方法助力高效数据处理
前端·后端
Jingyou6 分钟前
JavaScript 实现深拷贝
前端·javascript
编程猪猪侠6 分钟前
Vue 通用复选框组互斥 Hooks:兼容 Element Plus + Ant Design Vue
前端·javascript·vue.js
凡人程序员6 分钟前
搭建 monorepo 项目
前端·javascript
linda26186 分钟前
说说 Map 和 Set 的区别及实际应用
前端·javascript
_一两风7 分钟前
“点一下就能改”——这个功能为首富赚到了多少money?
前端·javascript
小飞侠在吗9 分钟前
vue setup与OptionsAPI
前端·javascript·vue.js
疯不皮9 分钟前
tiptiap3如何实现编辑器内部嵌套多个富文本编辑器
前端·vue.js·开源
溪饱鱼10 分钟前
主动与被动AI交互范式
前端·后端·aigc
我叫黑大帅11 分钟前
如何实现UniApp登录拦截?
前端·javascript·vue.js