vue3中常见的组合式API

news/2024/6/19 0:37:05 标签: 1024程序员节, vue3, compositionAPI, 组合式API

一、toRef 和 toRefs

应用:要将响应式对象中的某个属性单独提供给外部使用时。

语法:

        toRef语法:const name = toRef(person, 'name')

        toRefs语法:toRefs(person),如果在return中直接写,需要用...(展开运算符)

二、shallowRef 与 shallowReactive(shallow浅层次的)

shallowRef:只处理基本数据类型的响应式,不进行对象的响应式处理。

shallowReactive:只处理对象最外层属性的响应式(浅响应式)。

应用:

        如果有一个对象数据,后续功能不会修改该对象中的属性,而是生成新的对象来替换,用shallowRef。

        如果有一个对象数据,结构较深,变化时只有外层属性变化,用shallowReactive。

三、readonly 与 shallowReadonly(shallow浅层次的)

readonly:让一个响应式数据变为深层次只读(所有属性都不能被修改)。

shallowReadonly:让一个响应式数据变为浅只读(只有最外层属性不能被修改)。

应用:当一个对象定义在hook中,或者可复用的组件中,如果其中一个父组件不允许修改这个对象,就可以使用。

用法:person = readonly(person)     person = shallowReadonly(person)

四、toRaw 与 markRow

toRaw:

        作用:将一个由 reactive 生成的响应式对象转为普通对象

        应用:读取响应式对象对应的普通对象,对这个普通对象的所有操作,不会引起页面更新。

        语法:const p = toRaw(person)

markRaw:

        作用:标记一个对象属性,使其永远不会再成为响应式。

        应用:
                (1)有些值不应被设置为响应式的,例如复杂的第三方类库等。
                (2)当渲染具有不可变数据源的大列表时,跳过响应式转换可以提高性能。

        语法:person.car = markRow(car)


http://www.niftyadmin.cn/n/5119672.html

相关文章

SpringCloud微服务 【实用篇】| 认识微服务

目录 一:认识微服务 1. 微服务框架介绍 2. 服务架构演变 3. 微服务技术对比 4. SpringCloud 图书推荐:《巧用ChatGPT快速提高职场晋升力》 一:认识微服务 本课程学习于黑马,会通过分层次学习,分为三部分去讲解微…

【力扣刷题】解码方法

【力扣刷题】解码方法😎 前言🙌91. 解码方法解题思路:解题源码分享: 运行结果截图: 总结撒花💞 😎博客昵称:博客小梦 😊最喜欢的座右铭:全神贯注的上吧&#…

cuda卸载

去查看你的电脑显卡对应的cuda版本,不然还是一整个用不到gpu的情况嘿嘿. 啊啊啊啊打开控制面板看一下,驱动不要乱卸载: 这些东西不能全部卸载了哦,只能卸载含有“CUDA”的那几个(其实其他的可能也没有用 但是不懂的哇 …

centos服务器搭建安装Gitlab教程使用教程

1、更新服务器: sudo yum update -y && sudo yum upgrade -y 2、下载Gitlab的RPM包 https://packages.gitlab.com/gitlab/gitlab-cece表示开源el表示centos 选64位el8对应CentOS8 本教程以centos8为例,在服务器中,下载centos8的…

深度学习标注工具(包括自动标注)总结——持续更新

首次记录日期2023年10月24日 名称 导出格式支持形状地址1 anylabeling 支持yolov5和v8,自动标注的软件 沿物体轮廓分割 https://github.com/vietanhdev/anylabeling 2 RectLabel 使用Core ML模型自动标记图像 对象、属性、热键和快速标签的设置。 以PASCAL VOC …

python实现批量pdf转txt和word

文章目录 背景需求环境安装完整代码效果 背景需求 已经获取到了大量的pdf在download文件夹中,但是我需要的是txt文件和word文件~ 环境安装 pip install pdf2docx pdfminer.six完整代码 # pip install pdf2docx pdfminer.siximport os from pdf2docx …

Ivs+keepalived:高可用集群

Ivskeepalived:高可用集群 keepalived为lvs应运而生的高可用服务。lvs的调度器无法做高可用,keepalived这个软件就是为了实现调度器的高可用。 注意:keepalived不是专门为lvs集群服务的,也可以做其他代理服务器的高可用。 lvs的高可用集群&a…

如何使用网络测试仪对车载终端进行时间同步测试

车载以太网概述 车载以太网是一种用以太网连接车内电子单元的新型局域网技术,与传统以太网使用4对非屏蔽双绞线电缆不同,车载以太网在单对非屏蔽双绞线上可实现100Mbit/s,甚至1Gbit/s的传输速率,同时还满足汽车行业对高可靠性、低…