当前位置: 首页 > news >正文

06.toRef 和 toRefs

学习要点:
1.toRef 和 toRefs
本节课我们来要了解一下 Vue3.x 中的 ref 两个周边 API 的用法;
一.toRef 和 toRefs
1. toRef 可以将源响应式对象上的 property 创建一个 ref 对象;
const obj = reactive({
name : 'Mr.Lee',
age : 100
})
// ref 和 toRef 都是给一个静态数据实行响应式,转换成 ref 对象
// ref 是复制操作,和之前的对象断了关联;
// toRef 是引用操作,当修改数据时,原数据也会被修改;
const nameRef = ref(obj.name)
const nameToRef = toRef(obj, 'name')
console.log(nameRef)
console.log(nameToRef)
nameRef.value = 'Mr.Wang'
nameToRef.value = 'Mr.Wang'
console.log(obj.name)
PS:手册上使用的 prop 传递,因为我们还没有学 setup(prop),我们换个例子;
const obj = reactive({
name : 'Mr.Lee',
age : 100
})
const info = {
// 响应式操作,使用 ref(),则无法获取原数据的修改信息
name : toRef(obj, 'name')
}
setTimeout(() => {
// 由于使用了 toRef,原数据修改后,这里会更新到最新数据
console.log(info.name.value)
}, 1000)
// 修改原数据,关联被 toRef 的数据
obj.name = 'Mr.Wang' 2. toRefs 会将原来响应式对象转换为普通对象,并将内部所有 property 都 ref;
3. 比如:我们要把一个函数里响应式对象里的 property 解构出来时还保持响应式;
const userF = () => {
const state = reactive({
foo : 1,
bar : 2
})
return toRefs(state)
}
const { foo, bar } = userF()
console.log(foo)
console.log(bar)

相关文章:

06.toRef 和 toRefs

学习要点: 1.toRef 和 toRefs 本节课我们来要了解一下 Vue3.x 中的 ref 两个周边 API 的用法; 一.toRef 和 toRefs 1. toRef 可以将源响应式对象上的 property 创建一个 ref 对象; const obj reactive({ name : Mr.Lee, age : 10…...

RabbitMq、Kafka、RocketMq整理

MQ的主要作用:异步提高性能、解耦提高扩展性、削峰。 一、常见中间件对比 Kafka、RocketMq和RabbitMq最大的区别就是:前两个是分布式存储。 1.1、ActiveMq 优点:1)完全支持jms规范的消息中间件 ,2)提供丰富的api, 3)多种集群构建模式。 缺点:)在高并发的场景下,性能可…...

Python多元线性回归预测模型实验完整版

多元线性回归预测模型 实验目的 通过多元线性回归预测模型,掌握预测模型的建立和应用方法,了解线性回归模型的基本原理 实验内容 多元线性回归预测模型 实验步骤和过程 (1)第一步:学习多元线性回归预测模型相关知识。 一元线性回归模型…...

C#基础 变量在内存中的存储空间

变量存储空间(内存中) // 1byte 8bit // 1KB 1024byte // 1MB 1024KB // 1GB 1024MB // 1TB 1024GB // 通过sizeof方法 可以获取变量类型所占的内存空间(单位:字节) 有…...

你最关心的4个零代码问题,ChatGPT 帮你解答了!

作为人工智能(AI)新型聊天机器人模型 ChatGPT,刚上线5天就突破100万用户,两个多月全球用户量破亿,不愧为业界最炙热的当红炸子鸡。 ChatGPT 是一种语言生成模型,由 OpenAI 开发和训练。它是基于 Transform…...

linux的环境变量

目录 一、自定义变量和环境变量的区别 二、自定义变量 三、环境变量 四、查看所有变量(自定义变量、环境变量) 五、记录环境变量到相关的系统文件 (1)为什么要这样做? (2)环境变量相关系统…...

openQA----基于openSUSE部署openQA

【原文链接】openQA----基于openSUSE部署openQA (1)下载 openqa-bootstrap 脚本并执行 cd /opt/ curl -s https://raw.githubusercontent.com/os-autoinst/openQA/master/script/openqa-bootstrap | bash -x(2)配置apache proxy…...

正则表达式基础一

BRE(basic regular expression):匹配数据流中的文本字符 普通文本匹配 特殊字符 正则表达式存在一些特殊字符,如需当成普通文本来匹配,必须加上转义,即反斜杠\,如下所示 .*[]^${}?|() 指定出现位置的字符 ^ 指定行首…...

Java中的内存泄露、内存溢出与栈溢出

内存泄露、内存溢出与栈溢出 1、概述2、内存泄漏、内存溢出和栈溢出2.1、内存泄漏2.2、内存溢出2.3、栈溢出 2、总结 1、概述 大家好,我是欧阳方超。本次就Java中几个相似而又不同的概念做一下介绍。内存泄漏、内存溢出和栈溢出都是与内存相关的问题,但…...

时序预测 | Matlab实现SSA-GRU、GRU麻雀算法优化门控循环单元时间序列预测(含优化前后对比)

时序预测 | Matlab实现SSA-GRU、GRU麻雀算法优化门控循环单元时间序列预测(含优化前后对比) 目录 时序预测 | Matlab实现SSA-GRU、GRU麻雀算法优化门控循环单元时间序列预测(含优化前后对比)预测效果基本介绍程序设计参考资料 预测效果 基本介绍 Matlab实现SSA-GRU、GRU麻雀算法…...

Java+springboot开发的医院HIS信息管理系统实现,系统部署于云端,支持多租户SaaS模式

一、项目技术框架 前端:AngularNginx 后台:JavaSpring,SpringBoot,SpringMVC,SpringSecurity,MyBatisPlus,等 数据库:MySQL MyCat 缓存:RedisJ2Cache 消息队列&…...

【前端面经】Vue-Vue中的 $nextTick 有什么作用?

Vue.js 是一个流行的 JavaScript 框架,它提供了许多实用的功能,其中之一就是 $nextTick 方法。 在 Vue.js 中, $nextTick 方法可以确保我们在更新 DOM 之后再去执行某些操作,从而避免由于 DOM 更新而导致的问题。这个方法非常实用…...

基于STATCOM的风力发电机稳定性问题仿真分析(Simulink)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...

如何写出高质量的代码

背景说明: 你是否曾经为自己写的代码而感到懊恼?你是否想过如何才能写出高质量代码?那就不要错过这个话题!在这里,我们可以讨论什么是高质量代码,如何写出高质量代码等问题。无论你是初学者还是资深开发人…...

15.基于主从博弈的智能小区代理商定价策略及电动汽车充电管理

说明书 MATLAB代码:基于主从博弈的智能小区代理商定价策略及电动汽车充电管理 关键词:电动汽车 主从博弈 动态定价 智能小区 充放电优化 参考文档:《基于主从博弈的智能小区代理商定价策略及电动汽车充电管理》基本复现 仿真平台&#…...

ChatGPT实现多语种翻译

语言翻译 多语种翻译是 NLP 领域的经典话题,也是过去很多 AI 研究的热门领域。一般来说,我们认为主流语种的互译一定程度上属于传统 AI 已经能较好完成的任务。比如谷歌翻译所采用的的神经机器翻译(NMT, Neural Machine Translation)技术就一度让世人惊…...

volatile关键字原理的使用介绍和底层原理解析和使用实例

文章目录 volatile关键字原理的使用介绍和底层原理解析和使用实例1. volatile 关键字的作用2. volatile 的底层原理3. volatile 的使用案例4. volatile 的原子性问题5. 如何解决 volatile 的原子性问题6. volatile 的实现原理7. 小结8. volatile的最佳实践9. 案例:使用volatile…...

【软件下载】换新电脑记录下下载的软件时所需地址

1.idea https://www.jetbrains.com/zh-cn/idea/download/other.html 2.oracle官方(下载jdk时找的) https://www.oracle.com/ 3.jdk8 https://www.oracle.com/java/technologies/downloads/ 下拉找到jdk8 切换windows (需要注册个oracle账…...

【10.HTML入门知识-CSS元素定位】

1 标准流(Normal Flow) 默认情况下,元素都是按照normal flow(标准流、常规流、正常流、文档流【document flow】)进行排布  从左到右、从上到下按顺序摆放好  默认情况下,互相之间不存在层叠现象 1.1…...

LeetCode_贪心算法_简单_455.分发饼干

目录 1.题目2.思路3.代码实现(Java) 1.题目 假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。 对每个孩子 i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的…...

终极指南:如何使用ViGEmBus虚拟游戏控制器驱动程序提升Windows游戏体验

终极指南:如何使用ViGEmBus虚拟游戏控制器驱动程序提升Windows游戏体验 【免费下载链接】ViGEmBus Windows kernel-mode driver emulating well-known USB game controllers. 项目地址: https://gitcode.com/gh_mirrors/vi/ViGEmBus 你是否曾经遇到过想在Win…...

共享茶室智能系统与运营全解析:从空间设计到自动化管理

1. 项目概述:为什么“共享茶室”正在重塑传统茶饮消费如果你最近留意过城市里的新业态,可能会发现一种名为“共享茶室”的空间正在悄然兴起。它不像传统的茶馆那样需要高昂的消费和复杂的社交礼仪,也不像奶茶店那样主打快节奏的“即买即走”。…...

终极指南:在Windows上直接安装安卓APK的3大优势与6个实用技巧

终极指南:在Windows上直接安装安卓APK的3大优势与6个实用技巧 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer APK Installer是一款专为Windows系统设计的安…...

对比直接使用厂商API,Taotoken在账单清晰度上的优势

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 对比直接使用厂商API,Taotoken在账单清晰度上的优势 在集成多个大语言模型到业务中时,开发者或团队通常会面…...

Arm CADI 2.0调试接口架构与多调试器协同实践

1. CADI接口调试架构深度解析在嵌入式系统开发领域,调试接口的设计质量直接影响着开发效率。CADI(Component Architecture Debug Interface)作为Arm推出的标准化调试接口,其2.0版本通过创新的架构设计解决了传统调试方案中的诸多痛…...

Gemini3.1Pro评估ViT平移不变性:4周MVP路线图

利用 Gemini 3.1 Pro 评估视觉 Transformer 的平移不变性:从机制刻画、对照验证到门控降级与4周MVP路线图“平移不变性(Translation Invariance)”是视觉 Transformer(ViT 等)稳健性的核心指标之一:当图像在…...

一文看懂三种 RAG 架构:Classic RAG、Graph RAG 与 Agentic RAG

很多团队第一次把大模型接进业务系统时,都会问同一个问题:「能不能让 AI 回答我们公司内部文档里的问题?」 比如员工手册里的假期政策、产品文档里的功能说明、客服知识库里的标准话术、会议纪要里的决策记录,甚至是业务系统里的…...

ClawX:基于RAG的智能代码助手,实现项目级上下文感知编程

1. 项目概述:ClawX,一个面向开发者的智能代码助手最近在GitHub上看到一个挺有意思的项目,叫ClawX。乍一看这个名字,可能会联想到“爪子”或者“抓取”,但它的定位其实是一个AI驱动的代码助手。作为一个在开发一线摸爬滚…...

实战解析:如何通过显卡频率优化解决CUDA/TensorRT推理速度骤降问题

1. 从异常现象到问题定位 最近在部署一个基于YOLOv5的工业检测系统时,遇到了一个让人头疼的问题:当系统从连续检测模式切换到条件触发模式后,原本飞快的CUDA推理速度突然下降了近5倍。更诡异的是,降低相机帧率后,推理…...

将HermesAgent项目接入Taotoken的详细配置步骤与注意事项

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 将HermesAgent项目接入Taotoken的详细配置步骤与注意事项 本文旨在为开发者提供一份清晰的指南,帮助你将HermesAgent项…...