VUE3中ref与reactive

  • ref:支持所有类型
  • reactive:只支持引用类型(Obj,Array...)
  • 两者都是实现数据视图响应式

JS逻辑使用中

ref:需要使用.value

reactive:不需要使用.value

html 复制代码
 <el-button @click="handle()" type="primary">操作ref</el-button>
javascript 复制代码
import { ref, reactive } from "vue";

const refobj = ref({name:'小李'})
const reactiveobj = reactive ({name:'小红'})

const handle = ()=>{
  refobj.value.name='小明' // refobj :{name:'小明'}
  reactiveobj.name='小花'  // reactiveobj :{name:'小花'}
}

reactive基于proxy 数组不能直接赋值 否则破坏响应式对象

解决方法1:利用push+...解构

javascript 复制代码
let list = reactive<string[]>([])
const listhandle = () => {
  let res = ['as', 'asd', 'asdf']
  list = res // 赋值失败!
  list.push(...res) //数组利用解构赋值成功!
  console.log(list);

}

解决方法2:声明对象一个,数组为对象中的属性进行赋值

相关推荐
雪芽蓝域zzs1 分钟前
第24章:ECharts 地图组件(基础行政区地图,若依 Vue3)
vue.js·echars
2601_963870219 分钟前
基于SSM的特产代购系统
java·前端
paopaokaka_luck11 分钟前
智慧社区综合服务小程序(人脸识别、AI问答、Echarts图形化分析)
前端·javascript·spring boot·spring·数据分析·echarts
烈风逍遥29 分钟前
第七篇:提示词模板管理与 Agent 提示词编排
前端·人工智能·后端
Amos_Web38 分钟前
Rspack 源码解析(十二):JavaScript Chunk 是如何被渲染出来的
前端·rust·源码
前端探险家Rick1 小时前
React Native 二级弹出面板 + 键盘适配:从踩坑到正确方案
前端
用户921080262861 小时前
MCP 是什么?用 Figma MCP 辅助还原 Vue 页面
前端
用户921080262861 小时前
用 Figma MCP 还原 Vue 页面时,我遇到的三个问题
前端
修罗王1 小时前
从 React Bits 到 Vue/Svelte Bits:重新定义前端“视觉表达层“
前端
kiros_wang1 小时前
Notification 本地通知:定时消息、点击路由跳转、桌面角标适配
前端