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

相关推荐
Qlittleboy1 分钟前
TP5.0的“请求缓存”,把页面缓存为静态HTML文件,提升加载速度
前端·缓存·html·php
請你喝杯Java2 分钟前
基于 TypeScript React Next.js 的 AI 产品技术栈调研报告
javascript·react.js·typescript
Doris8933 分钟前
【Node.js 】Node.js 与 Webpack 模块化工程化入门指南
前端·webpack·node.js
爱学习的程序媛4 分钟前
【Web前端】“十五五”重大项目中的前端机遇
前端·科技·信息可视化·前端框架·创业创新·信息与通信
始持5 分钟前
第十二讲 风格与主题统一
前端·flutter
小码哥_常5 分钟前
Room 3.0大变身:安卓开发的新挑战与机遇
前端
法欧特斯卡雷特5 分钟前
Kotlin 2.3.20 现已发布,来看看!
android·前端·后端
Wect5 分钟前
LeetCode 53. 最大子数组和:两种高效解法(动态规划+分治)
前端·算法·typescript
始持6 分钟前
第十三讲 异步操作与异步构建
前端·flutter
Irene19919 分钟前
JavaScript中的深克隆和浅克隆的区别(“浅克隆”和“浅复制”通常指的是同一个概念)
javascript·深克隆·浅克隆