Vue3——ref(),reactive(),watch(),computed()的使用

news2024/11/15 10:42:41

 

都需要先引入才能使用 

ref()函数

        作用:创建一个响应式变量,使得某个变量在发生改变时可以同步发生在页面上

        模板语句中使用这个变量时可以直接使用变量名来调用,在setup内部调用时则需要在变量明后面加上一个.value获取它的值,原因是因为使用ref()返回的是一个RefImpl对象类型,如下图所示

注意: 从 setup 返回的 refs(定义) 在模板中访问时会自动展开,因此模板中不需要 .value

reactive()函数

        作用:创建一个响应式的对象,不可重新赋值,使用该函数创建的对象也是可以像ref()的一样实现响应式的变化,但是不管是模板语句里面还是setup内部都可以像普通的对象一样调用,但是使用reactive返回的同样是一个Proxy对象类型的数据。。。如下图所示

 reactive()和ref()的应用

         《=前端页面                                                                      代码页面=》

 在setup里面创建了一个ref变量age和一个reactive变量count,用一个按钮绑定了一个函数用来使得两个函数自增1,同时在页面上动态显示。

 watch()函数:

        作用:用来监视某一个数据变化,可以同时触发函数

以下仅展示在vue3中的一种写法

1.watch函数监视一个ref变量

其中newvalue是age的变化后的新值,oldvalue是变化前的旧值

2.watch监视多个ref变量的变化

 

3. watch函数监视reactive创建的响应式对象本身

 如同视频里面的一样,无法正确的获取到count里面的属性。

 4.watch函数监视reactive创建的响应式对象的一个属性

 

可以看见,现在想要通过watch函数获取reactive变化的旧值只能通过监视对象的属性

 5. watch函数监视reactive创建的响应式对象的多个属性

 watch函数的一些选项

 即时回调的侦听器:immediate:true

可以选择开启在元素创建的同时执行一次watch的回调函数

深层侦听器:deep:true

watch默认只监视浅层的数据,而嵌套的属性发生变化通常监听不到,开启deep后就可以了

特殊情况:在上面第三个例子中监视一个响应式数据的所有属性是deep的配置失效,强制性开启了deep

此外,watch函数还有别的一些创建方法此处不再过多赘述,等以后用到再加

computed()在setup中的使用,这里的使用仅仅只是同一个特殊的用法,普遍的用法这里还没有说到

根据cpmputed的特性,用来计算某一个属性,这个属性依赖的数据有可能会变化,这里是以一个输入的形式用v-model绑定了所依赖的数据

这里computed的写法是一个究极的简写版本

用了简写computed形式的属性是不能直接修改的,如图

 当尝试去直接修改fullname的值的时候会出现警告

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/99173.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

记录一次使用卷积神经网络进行图片二分类的实战

写在前面 笔者目前就读的专业是软件工程,并非人工智能专业,但是由于对人工智能有兴趣,于是课下进行了一些自学。正巧最近有些闲暇时间,就想着使用自学的内容做个小型的实战。这篇文章的主要目的也就是从一个入门者的角度&#xf…

【C++】list

本期就来讲讲list的使用技巧 文章目录list的介绍及使用list的介绍list迭代器失效list的模拟实现list与vector的对比我们前面知道迭代器是一个像指针一样的东西,但是在C里面,出来string和vector,其他类都不能 将迭代器当成指针使用&#xff0c…

二叉树的非递归与相关oj

🧸🧸🧸各位大佬大家好,我是猪皮兄弟🧸🧸🧸 文章目录一、二叉树相关oj①二叉搜索树与双向链表②前序遍历和中序遍历构造二叉树二、二叉树的非递归①前序遍历非递归②中序遍历非递归③后序遍历非…

简单的算法思想 - 利用快慢指针解决问题 - 寻找链表中的中间节点,回文序列,倒数第k个节点 - 详解

文章目录1. 寻找链表中倒数第K个节点1.1. 思路分析1.2 代码实现2. 寻找链表中的中间结点2.1 思路概述2.2 代码实现3. 链表的回文结构3.1 思路分析3.2 代码实现总结✨✨✨学习的道路很枯燥,希望我们能并肩走下来! 本文通过寻找链表中的中间节点&#xff0…

汽车托运网址

开发工具(eclipse/idea/vscode等): 数据库(sqlite/mysql/sqlserver等): 功能模块(请用文字描述,至少200字): 基于Web的汽车托运网站的设计与实现 网站前台:关于我们、联系我们、公告信息、卡车类型、卡车信息、运输评论…

【语音处理】一种增强的隐写及其在IP语音隐写中的应用(Matlab代码实现)

👨‍🎓个人主页:研学社的博客 💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜…

Effective Objective-C 2.0学习记录(一)

48.多用块枚举,少用for循环for循环快速枚举(快速遍历)基于块的遍历方式在编程中经常需要用到列举collection(NSArray、NSDictionary、NSSet等)中的元素,当前的Objective-C语言有多种办法实现此功能&#xf…

【专栏】核心篇09| 怎么保证缓存与DB的数据一致性

计算机类PDF整理:【详细!!】计算机类PDF整理 Redis专栏合集 【专栏】01| Redis夜的第一章 【专栏】基础篇02| Redis 旁路缓存的价值 【专栏】基础篇03| Redis 花样的数据结构 【专栏】基础篇04| Redis 该怎么保证数据不丢失(上…

Python -- 模块和包

目录 1.Python中的模块 1.1 import 1.3 from...import * 1.4 as别名 2.常见的系统模块和使用 2.1 OS模块 2.2 sys模块 2.3 math模块 2.4 random模块 2.5 datetime模块 2.6 time模块 2.7 calendar模块 2.8 hashlib模块 2.9 hmac模块 2.10 copy模块 3.pip命令的使…

【机器学习---01】机器学习

文章目录1. 什么是机器学习?2. 机器学习分类2.1 基本分类2.2 按模型分类2.3 其他分类(不重要)3. 机器学习三要素4. 监督学习的应用(分类、标注、回归问题)1. 什么是机器学习? 定义:给定训练集D,让计算机从一个函数集合F {f1(x)&…

虚拟机打不开,提示“此主机不支持虚拟化实际模式”的详细解决方法

虚拟机打不开,提示“此主机不支持虚拟机实际模式”的解决方法 一、第一种情况安装/启动虚拟机失败, 在VMWare软件中,安装/启动虚拟机时,如果出以类似以下的错误提示: 出现该提示是由于电脑不支持虚拟化技术或是相关功…

IDEA报错:类文件具有错误的版本 61.0,应为52.0

springboot项目启动报错: 类文件具有错误的版本 61.0,应为52.0 请删除该文件或确保该文件位于正确的类路径子目录中 查阅了网上的很多资料,普遍原因说是springboot版本过高,高于3.0 需要在pom文件中降低版本 也有说是idea的maven配置java版…

网购商城网站

开发工具(eclipse/idea/vscode等): 数据库(sqlite/mysql/sqlserver等): 功能模块(请用文字描述,至少200字):

【Python机器学习】层次聚类AGNES、二分K-Means算法的讲解及实战演示(图文解释 附源码)

需要源码和数据集请点赞关注收藏后评论区留言私信~~~ 层次聚类 在聚类算法中,有一类研究执行过程的算法,它们以其他聚类算法为基础,通过不同的运用方式试图达到提高效率,避免局部最优等目的,这类算法主要有网格聚类和…

easypoi导入excel空指针异常

问题描述 前端页面停留在导入页面,通过后端返回的接口,确认后端已经抛出异常查看系统调用错误日志为 java.lang.NullPointerException: nullat org.apache.poi.xssf.usermodel.XSSFClientAnchor.setCol2(XSSFClientAnchor.java:231)at org.apache.poi.…

基于EKF的四旋翼无人机姿态估计matlab仿真

目录 1.算法描述 2.仿真效果预览 3.MATLAB核心程序 4.完整MATLAB 1.算法描述 卡尔曼滤波是一种高效率的递归滤波器(自回归滤波器),它能够从一系列的不完全包含噪声的测量中,估计动态系统的状态。这种滤波方法以它的发明者鲁道夫E卡尔曼(R…

Android koin

1.源码地址 1.源码地址 2.作用 1.让代码看起来更简洁 现在是这样创建对象的 2.解耦 我们有一个类,然后有100个地方使用它,这个时候如果我们要修改构造参数,加入一个参数,那么我们就要修改100个地方;如果过了一个…

怎样让chatGPT给你打工然后月入过千?

前言 chatGPT最近火出圈了,怎么薅一个文字模型给你打工呢? 这个UP给了个思路:哔哩哔哩 emmm有点尴尬,可能是热度比较高,b站的视频作者自己下架了。 总结一下: 薅的对象百度文库创作中心:地址…

设计模式之装饰器模式

decorator design pattern 装饰模式的概念、装饰模式的结构、装饰模式的优缺点、装饰模式的使用场景、装饰模式与代理模式的区别、装饰模式的实现示例、装饰模式的源码分析 1、装饰模式的概念 装饰模式,即在不改变现有对象结构的前提下,动态的给对象增加…

【云原生】Grafana 介绍与实战操作

文章目录一、概述二、Grafana 安装1)下载安装2)安装包信息3)启动服务4)Grafana 访问三、Grafana 功能介绍四、使用mysql存储1)安装mysql2)修改grafana配置1、创建grafana用户和grafana库2、修改grafana配置…