Vue3:优化-从响应式数据中获取纯数据

一、情景说明

我们知道,Vue3中,创建变量时,常用ref、reactive来包裹,这样,这个变量就是响应式数据

然而,有时候,我们只需要纯数据

例如,我们在调用后端接口的时候,我们只要传递JSON结构的纯数据,不需要具备响应式

从而,提升性能。

这个时候,就需要用到toRaw、markRaw技术

二、案例

1、toRaw

从响应式对象中,取出纯JSON数据

js 复制代码
import { reactive,toRaw,markRaw,isReactive } from "vue";

/* toRaw */
// 响应式对象
let person = reactive({name:'tony',age:18})
// 原始对象
let rawPerson = toRaw(person)

2、markRaw

标记一个对象,使其永远不会变成响应式的。

javascript 复制代码
/* markRaw */
let citys = markRaw([
  {id:'asdda01',name:'北京'},
  {id:'asdda02',name:'上海'},
  {id:'asdda03',name:'天津'},
  {id:'asdda04',name:'重庆'}
])
// 根据原始对象citys去创建响应式对象citys2 ------ 创建失败,因为citys被markRaw标记了
let citys2 = reactive(citys)
相关推荐
bloxed24 分钟前
前端文件下载多方式集合
前端·filedownload
余生H30 分钟前
前端Python应用指南(三)Django vs Flask:哪种框架适合构建你的下一个Web应用?
前端·python·django
LUwantAC39 分钟前
CSS(四)display和float
前端·css
cwtlw42 分钟前
CSS学习记录20
前端·css·笔记·学习
界面开发小八哥1 小时前
「Java EE开发指南」如何用MyEclipse构建一个Web项目?(一)
java·前端·ide·java-ee·myeclipse
数据小小爬虫1 小时前
Python爬虫获取AliExpress商品详情
开发语言·爬虫·python
小爬虫程序猿1 小时前
利用Python爬虫速卖通按关键字搜索AliExpress商品
开发语言·爬虫·python
谢道韫6661 小时前
今日总结 2024-12-24
javascript·vue.js·elementui
一朵好运莲1 小时前
React引入Echart水球图
开发语言·javascript·ecmascript
米奇妙妙wuu1 小时前
react使用sse流实现chat大模型问答,补充css样式
前端·css·react.js