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:声明对象一个,数组为对象中的属性进行赋值

相关推荐
掘金安东尼7 分钟前
解读 hidden=until-found 属性
前端·javascript·面试
yangholmes888814 分钟前
如何为 Vue 组件提供 slots 静态类型检查
vue.js
1024小神16 分钟前
jsPDF 不同屏幕尺寸 生成的pdf不一致,怎么解决
前端·javascript
滕本尊16 分钟前
构建可扩展的 DSL 驱动前端框架:从 CRUD 到领域模型的跃迁
前端·全栈
借月17 分钟前
高德地图绘制工具全解析:线路、矩形、圆形、多边形绘制与编辑指南 🗺️✏️
前端·vue.js
li理17 分钟前
NavPathStack 是鸿蒙 Navigation 路由的核心控制器
前端
二闹20 分钟前
一招帮你记住上次读到哪儿了?
前端
li理24 分钟前
核心概念:Navigation路由生命周期是什么
前端
古夕27 分钟前
my-first-ai-web_问题记录02:Next.js 15 动态路由参数处理
前端·javascript·react.js
梦里寻码27 分钟前
自行食用 uniapp 多端 手写签名组件
前端·uni-app