如何理解ref toRef和toRefs
是什么
ref
- 生成值类型的响应式数据
- 可用于模板和reactive
- 通过.value修改值
ref也可以像vue2中的ref那样使用
toRef
- 针对一个响应式对象(reactive)的prop
- 创建一个ref
- 两者保持引用关系
toRefs
- 将响应式对象(reactive封装)转换为普通对象
- 对象的每个prop都是对应的ref
- 两者保持引用关系
合成函数(可以理解为hooks)返回响应式对象
最佳使用方式
- 用reactive做对象的响应式,用ref做值类型的响应式
- setup中返回toRefs(state),或者roRef(state, ‘xxx’)
- ref变量命名都用xxxRef
- 合成函数返回响应式对象时,使用toRefs
进阶,深入理解
为什么需要ref ?
- 返回值类型,会丢失响应式
- 如在setup、computed、合成函数,都有可能返回值类型
- Vue如果不定义ref,用户将自造ref,反而混乱
为什么需要.value?
- ref时一个对象(不丢失响应式),value存储值
- 通过.value属性的get和set实现响应式
- 用于模板、reactive时,不需要.value,其他情况都需要
比如:
// 不使用.valuefunction computed1(getter) {let ref = 0;setTimeout(() => {ref = getter}, 1500);return ref;}// 使用.valuefunction computed2(getter) {let ref = {value: null};setTimeout(() => {ref.value = getter}, 1500);return ref;}let a = computed1(() => 100); // 0 -> 0let b = computed2(() => 100); // 0 -> 100
为什么需要toRef toRefs?
- 初衷:在不丢失响应式的情况下,把对象数据分解/扩散(解构)
- 前提:针对的是响应式对象(reactive封装的)非普通对象
- 注意:不创造响应式,而是延续响应式
相关文章:
![](https://www.ngui.cc/images/no-images.jpg)
如何理解ref toRef和toRefs
是什么 ref 生成值类型的响应式数据可用于模板和reactive通过.value修改值 ref也可以像vue2中的ref那样使用 toRef 针对一个响应式对象(reactive)的prop创建一个ref两者保持引用关系 toRefs 将响应式对象(reactive封装)转换…...
![](https://www.ngui.cc/images/no-images.jpg)
【linux】kernel-trace
文章目录 linux kernel trace配置trace内核配置trace接口使用通用配置Events配置Function配置Function graph配置Stack trace设置 跟踪器tracer功能描述 使用示例1.irqsoff2.preemptoff3.preemptirqsoff linux kernel trace 配置 源码路径: kernel/trace trace内…...
![](https://www.ngui.cc/images/no-images.jpg)
【Golang 面试基础题】每日 5 题(一)
✍个人博客:Pandaconda-CSDN博客 📣专栏地址:http://t.csdnimg.cn/UWz06 📚专栏简介:在这个专栏中,我将会分享 Golang 面试中常见的面试题给大家~ ❤️如果有收获的话,欢迎点赞👍收藏…...
![](https://www.ngui.cc/images/no-images.jpg)
ETCD介绍以及Go语言中使用ETCD详解
ETCD介绍以及Go语言中使用ETCD详解 什么是etcd ETCD是一个分布式、可靠的key-value存储的分布式系统,用于存储分布式系统中的关键数据;当然,它不仅仅用于存储,还提供配置共享及服务发现;基于Go语言实现 。 etcd的特点 完全复制:集群中的每个节点都可以使用完整的存档高…...
![](https://i-blog.csdnimg.cn/direct/0904019666e7498daa5337795df99ccd.png)
03-用户画像+Elasticsearch
优点 es支持海量数据的写入和更新es可以和hadoop,hive及spark进行集成es支持hivesql的操作,可以通过hivesql将数据导入eses的在进行数据检索查询是速度比较快es是分布式存储 应用 全文检索 全文检索流程: 1-对文档数据(文本数据)进行分词 2-将分词…...
![](https://i-blog.csdnimg.cn/direct/bd5ef263c498472790c3b3eef3a52f5b.png)
初学Mybatis之搭建项目环境
在连接 mysql 数据库时,遇到了个 bug,之前都能连上,但报错说换了个 OS 操作系统什么的 然后搜索怎么连接,找到了解决方法 MySQL MYSQL – 无法连接到本地MYSQL服务器 (10061)|极客教程 (geek-docs.com) 命令行输入 services.msc…...
![](https://i-blog.csdnimg.cn/direct/d1926a4f6fa847f992391abbdb7385e6.png)
JMeter使用小功能-(持续更新)
1、jmeter在同一个线程组内,uuid的复用 方式一: 方式二: 2、获得jMeter使用的线程总数 ctx.getThreadGroup().getNumberOfThreads()来表示活动线程总数 int threadNumctx.getThreadGroup().getNumThreads(); String threads Integer…...
![](https://www.ngui.cc/images/no-images.jpg)
科研绘图系列:R语言火山图(volcano plot)
介绍 火山图(Volcano Plot),也称为火山图分析,是一种在生物信息学和基因组学中常用的图形表示方法,主要用于展示基因表达数据的差异。它通常用于基因表达微阵列或RNA测序数据的可视化,帮助研究人员识别在不同条件下表达差异显著的基因。 火山图的基本构成 X轴:通常表示…...
![](https://i-blog.csdnimg.cn/direct/8e9fb9e753a948bf937d881159193c27.png)
docker firewalld 防火墙设置
1、环境 centos 7 firewalld docker-ce docker 默认会更改防护墙配置 导致添加的防火墙策略不生效,可以启用firewalld 重新设置策略 2、启用防火墙 systemctl start firewalld systemctl enable firewalld3、配置文件禁用docker 的iptables /etc/docker/daemon.js…...
![](https://img-blog.csdnimg.cn/img_convert/fab25351c6179d8b96e1cd1e127cc756.png)
《问题004:报错-JS问题-unknown: Invalid shorthand property initializer.》
问题描述: unknown: Invalid shorthand property initializer. (25:13) unknown:无效的简写属性初始化项 解决方法: “”应该写为“:”(globalData 改成 globalData: )...
![](https://www.ngui.cc/images/no-images.jpg)
什么是 MLPerf?
什么是 MLPerf? MLPerf 是一个用于衡量机器学习硬件、软件和服务性能的标准化基准测试平台。它由 MLCommons 组织开发,该组织是由多家领先的科技公司和学术机构组成的。MLPerf 的目标是通过一系列标准化的基准测试任务和数据集,提供一个统一…...
![](https://www.ngui.cc/images/no-images.jpg)
【SpringBoot】第3章 SpringBoot的系统配置
3.1 系统配置文件 3.1.1 application.properties SpringBoot支持两种不同格式的配置文件,一种是Properties,一种是YML。 SpringBoot默认使用application.properties作为系统配置文件,项目创建成功后会默认在resources目录下生成applicatio…...
![](https://i-blog.csdnimg.cn/direct/984ce14762064497916bf72b30b5ce30.png)
ELK日志分析系统部署文档
一、ELK说明 ELK是Elasticsearch(ES) Logstash Kibana 这三个开源工具组成,官方网站: The Elastic Search AI Platform — Drive real-time insights | Elastic 简单的ELK架构 ES: 是一个分布式、高扩展、高实时的搜索与数据分析引擎。它…...
![](https://i-blog.csdnimg.cn/direct/5b230d22e3a24cc8bee2de140d2c324c.png)
ue5笔记
1 点光源 聚光源 矩形光源 参数比较好理解 (窗口里面)环境光混合器:快速创造关于环境光的组件 大气光源:太阳光,定向光源 天空大气:蓝色的天空和大气 高度雾:大气下面的高度感的雾气 体积…...
![](https://i-blog.csdnimg.cn/direct/5c63f53ae43b46d1a5a6af9491f504ba.png)
TCP重传机制详解
1.什么是TCP重传机制 在 TCP 中,当发送端的数据到达接收主机时,接收端主机会返回⼀个确认应答消息,表示已收到消息。 但是如果传输的过程中,数据包丢失了,就会使⽤重传机制来解决。TCP的重传机制是为了保证数据传输的…...
![](https://www.ngui.cc/images/no-images.jpg)
如何使用javascript将商品添加到购物车?
使用JavaScript将商品添加到购物车可以通过以下步骤实现: 创建一个购物车对象,可以是一个数组或者对象,用于存储添加的商品信息。在网页中的商品列表或详情页面,为每个商品添加一个“添加到购物车”的按钮,并为按钮绑…...
![](https://img-blog.csdnimg.cn/img_convert/912458b58932012c1128d52000fda994.png)
【MySQL】:想学好数据库,不知道这些还想咋学
客户端—服务器 客户端是一个“客户端—服务器”结构的程序 C(client)—S(server) 客户端和服务器是两个独立的程序,这两个程序之间通过“网络”进行通信(相当于是两种角色) 客户端 主动发起网…...
![](https://www.ngui.cc/images/no-images.jpg)
1.关于linux的命令
1.关于文件安装的问题 镜像站点服务器:cat /etc/apt/sources.list 索引文件:cd /var/lib/apt/lists 下载文件包存在的路径:cd /etc/cache/apt/archives/2.关于dpkg文件安装管理器的应用: 安装文件:sudo dpkg -i 文件名; 查找文件目录:sudo …...
![](https://i-blog.csdnimg.cn/direct/e50b730d5dba42a9bc449e8c84c9c1cf.png)
【人工智能】机器学习 -- 决策树(乳腺肿瘤数)
目录 一、使用Python开发工具,运行对iris数据进行分类的例子程序dtree.py,熟悉sklearn机器实习开源库。 二、登录https://archive-beta.ics.uci.edu/ 三、使用sklearn机器学习开源库,使用决策树对breast-cancer-wisconsin.data进行分类。 …...
![](https://img-blog.csdnimg.cn/img_convert/d56a169288c163c8e749cf16685d3e46.png)
【proteus经典实战】LCD滚动显示汉字
一、简介 Proteus是一款功能丰富的电子设计和仿真软件,它允许用户设计电路图、进行PCB布局,并在虚拟环境中测试电路功能。这款软件广泛应用于教育和产品原型设计,特别适合于快速原型制作和电路设计教育。Proteus的3D可视化功能使得设计更加直…...
![](https://www.ngui.cc/images/no-images.jpg)
数据结构复习1
1、什么是集合? 就是一组数据的集合体,就像篮子装着苹果、香蕉等等,这些“水果”就代表数据,“篮子”就是这个集合。 集合的特点: 集合用于存储对象。 对象是确定的个数可以用数组,如果不确定可以用集合…...
![](https://www.ngui.cc/images/no-images.jpg)
订单管理系统需求规范
1. 引言 1.1 目的 本文档旨在明确描述订单管理系统的功能、非功能性需求以及约束条件,以指导系统的分析、设计、开发、测试和部署。 1.2 范围 本系统将支持在线订单处理,从客户下单到完成配送的全过程管理,包括库存管理、支付处理、订单跟…...
![](https://i-blog.csdnimg.cn/direct/d5cf100fc5e24fb6ae3d3b3360981421.gif)
swiftui使用ScrollView实现左右滑动和上下滑动的效果,仿小红书页面
实现的效果如果所示,顶部的关注用户列表可以左右滑动,中间的内容区域是可以上下滚动的效果,点击顶部的toolbar也可以切换关注/发现/附近不同页面,实现翻页效果。 首页布局 这里使用了NavigationStack组件和tabViewStyle样式配置…...
![](https://www.ngui.cc/images/no-images.jpg)
深入理解并使用 MySQL 的 SUBSTRING_INDEX 函数
引言 在处理字符串数据时,经常需要根据特定的分隔符来分割字符串或提取字符串的特定部分。MySQL 提供了一个非常有用的函数 SUBSTRING_INDEX 来简化这类操作。本文将详细介绍 SUBSTRING_INDEX 的使用方法、语法,以及通过实际案例来展示其在数据库查询中…...
![](https://i-blog.csdnimg.cn/direct/10b1445f118f43b9b42feb2341570588.png)
elementUI在手机端使用遇到的问题总结
之前的博客有写过用vue2elementUI封装手机端选择器picker组件,支持单选、多选、远程搜索多选,最终真机调试的时候发现有很多细节样式需要调整。此篇博客记录下我调试过程中遇到的问题和解决方法。 一、手机真机怎么连电脑本地代码调试? 1.确…...
![](https://i-blog.csdnimg.cn/direct/c742c0ebafea4af08ee037a5c69d5a3f.png#pic_center)
【初阶数据结构】5.栈和队列
文章目录 1.栈1.1 概念与结构1.2 栈的实现2.队列2.1 概念与结构2.2 队列的实现3.栈和队列算法题3.1 有效的括号3.2 用队列实现栈3.3 用栈实现队列3.4 设计循环队列 1.栈 1.1 概念与结构 栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操…...
![](https://i-blog.csdnimg.cn/direct/f53b9a8aeef94191a61ed2e88243164d.png)
高通Android 12 设置Global属性为null问题
1、最近在做app调用framework.jar需求,尝试在frameworks/base/packages/SettingsProvider/res/values/defaults.xml增加属性 <integer name"def_xxxxx">1</integer> 2、在frameworks\base\packages\SettingsProvider\src\com\android\provide…...
![](https://www.ngui.cc/images/no-images.jpg)
Xcode代码静态分析:构建无缺陷代码的秘诀
Xcode代码静态分析:构建无缺陷代码的秘诀 在软件开发过程中,代码质量是至关重要的。Xcode作为Apple的官方集成开发环境(IDE),提供了强大的代码静态分析工具,帮助开发者在编写代码时发现潜在的错误和问题。…...
![](https://i-blog.csdnimg.cn/direct/09a90bb619ed4a65a321e34aa23bbd5c.png)
Qt各个版本安装的保姆级教程
文章目录 前言Qt简介下载Qt安装包安装Qt找到Qt的快捷方式总结 前言 Qt是一款跨平台的C图形用户界面应用程序开发框架,广泛应用于桌面软件、嵌入式软件、移动应用等领域。Qt的强大之处在于其高度的模块化和丰富的工具集,可以帮助开发者快速、高效地构建出…...
![](https://i-blog.csdnimg.cn/direct/f829641dd7284cf484c4dfc2a265489b.png)
数学建模--优劣解距离法TOPSIS
目录 简介 TOPSIS法的基本步骤 延伸 优劣解距离法(TOPSIS)的历史发展和应用领域有哪些? 历史发展 应用领域 如何准确计算TOPSIS中的理想解(PIS)和负理想解(NIS)? TOPSIS方法在…...
![](/images/no-images.jpg)
动画设计就业前景/seo快速排名源码
http://www.docin.com/p-443803801.html...
![](/images/no-images.jpg)
做淘客网站的/360浏览器网页版入口
题目背景 John的农场缺水了!!! 题目描述 农民John 决定将水引入到他的n(1<n<300)个牧场。他准备通过挖若干井,并在各块田中修筑水道来连通各块田地以供水。在第i 号田中挖一口井需要花费W_i(1<W_i<100,000)元。连接i …...
![](/images/no-images.jpg)
青海公司网站建设/百度云资源搜索平台
一、前言 前后端分离开发是目前软件开发的主流,大大提高了开发效率 但也带来了很多不方便之处。 1、优点: ① 传统全栈开发的 MVC 模式将不适合,后台采取 MVP 面向接口编程,耦合度大大降低 2、缺点: ① 跨域问题…...
![](https://img-blog.csdnimg.cn/img_convert/a25ff08b3c58b77608b0d6aa0a3a0e1a.png)
单页的网站怎么做/商品标题优化
现在用到最多的Win10系统是Win10专业版,用户重装Win10专业版系统的目的就是为了解决电脑遇到的问题,然而重装系统后还是会出现许许多多的问题,比如说部分软件打不开了,闪退的问题。如果您也遇到了相同的问题,下面就是小…...
![](/images/no-images.jpg)
白银网站建设白银/线下营销方式主要有哪些
当FCoE应用于存储网络时,它的采用速度并没有想象中那么快。但是,用户最终克服了当时的障碍,使得FCoE被广泛采用。 是否该考虑在存储网络中使用以太网光纤通道(FCoE)? James Damoulakis:几年前,当FCoE应用于存储网络时…...
![](/images/no-images.jpg)
网络运维工程师需要具备什么证书/seo查询网站是什么
Go语言常见语法错误 转载自大神博客 目录Go语言常见语法错误1、开大括号不能放在单独的一行2、未使用的变量3、未使用的Imports4、":"简式的变量声明仅可以在函数内部使用5、使用简式声明重复声明变量6、Go语言命名区分大小写7、Go语言中分号分行8、Go语言中无效的分…...