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方法,具体的使用方式如下图,勾选即可

相关推荐
神所夸赞的夏天9 分钟前
如何获取多层json数据,存成dictionary,并取最大最小值
java·前端·json
红色的小鳄鱼9 分钟前
前端面试js手写
开发语言·前端·javascript
焦糖玛奇朵婷13 分钟前
健身房预约小程序开发、设计
java·大数据·服务器·前端·小程序
上海云盾王帅22 分钟前
WEB业务如何接入安全防护:从零到一的实战指南
前端·安全
用户0595401744624 分钟前
AI Agent记忆丢失踩坑实录:这个问题让我排查了3天
前端·css
web行路人27 分钟前
前端对Commands(斜杠命令)一些常用
前端·javascript·vue.js·vue
当时只道寻常28 分钟前
从零到一打造企业级全栈后台管理系统 —— 技术选型、工程化实践与深度思考
前端·全栈·前端工程化
竹林81829 分钟前
用 ethers.js 连 MetaMask 做钱包登录,我踩了三个坑才搞定跨页面状态同步
前端·javascript
饺子不吃醋29 分钟前
深入理解 Vue 3 的 setup(含 Composition API)
前端·vue.js
阿星做前端31 分钟前
重度 AI 编程用户的一天:我怎么把 Claude Code / Codex 工作流搬进浏览器工作台
前端·javascript·后端