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

Vue: watch5种监听情况

目录

一.watch的性质与作用

1.watch 的性质包括:

2.watch 常用于以下场景:

二.监视`ref`定义的基本类型数据

三.监视`ref`定义的对象类型数据

四.监视`reactive`定义的对象类型数据

五.监视`ref`或`reactive`定义的对象类型数据中的某个属性

六.监视上述的多个数据


一.watch的性质与作用

在 Vue 中,watch 的主要作用是监听数据的变化,并在数据变化时执行相应的回调函数,从而实现对数据变化的响应和处理。

1.watch 的性质包括:

  1. 可以监听 Vue 实例中的数据属性、计算属性、方法的返回值等。
  2. 能够获取数据变化前后的值,即新值和旧值,以便在回调函数中进行处理和比较。
  3. 支持深度监听,即可以监听对象内部属性的变化。
  4. 可以设置立即执行选项,在组件创建时立即执行一次回调函数。

2.watch 常用于以下场景:

  1. 当数据变化时执行异步操作,比如发送网络请求获取新的数据。
  2. 进行复杂的数据处理和逻辑判断。
  3. 同步更新其他相关的数据或状态。

二.监视`ref`定义的基本类型数据

直接写数据名即可,监视的是其`value`值的改变。

三.监视`ref`定义的对象类型数据

直接写数据名,监视的是对象的地址值,若想监视对象内部的数据,要手动开启深度监视。
1.若修改的是`ref`定义的对象中的属性,`newValue` 和 `oldValue` 都是新值,因为它们是同一个对象。
2.若修改整个`ref`定义的对象,`newValue` 是新值, `oldValue` 是旧值,因为不是同一个对象了。

四.监视`reactive`定义的对象类型数据

五.监视`ref`或`reactive`定义的对象类型数据中的某个属性

1. 若该属性值不是对象类型,需要写成函数形式。
2. 若该属性值是依然是对象类型,可直接编,也可写成函数,建议写成函数。

结论:监视的要是对象里的属性,那么最好写函数式,注意点:若是对象监视的是地址值,需要关注对象内部,需要手动开启深度监视。


六.监视上述的多个数据

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • WPF利用Path自定义画头部导航条(TOP)样式
  • Python基础语法(1)上
  • [数据集][目标检测]河道垃圾检测数据集VOC+YOLO格式2274张8类别
  • 提问即创作:用Prompt提示词引领AI灵感爆发
  • 关于axios同步获取数据的问题
  • Redis embstr 编码
  • MATLAB在嵌入式系统设计中的最佳实践
  • 《Oracle(一)- 基础》
  • 【重学 MySQL】二十四、笛卡尔积的错误和正确的多表查询
  • DOM编程
  • 桥接模式详解和分析JDBC中的应用
  • 预处理详解(二)
  • 【Android Studio】2024.1.1最新版本AS调试老项目(老版AS项目文件、旧gradle)导入其他人的项目
  • bat批量修改文件名
  • C++ 萃取技术——值萃取
  • 【mysql】环境安装、服务启动、密码设置
  • axios请求、和返回数据拦截,统一请求报错提示_012
  • Github访问慢解决办法
  • js递归,无限分级树形折叠菜单
  • markdown编辑器简评
  • node和express搭建代理服务器(源码)
  • Python_OOP
  • Redis中的lru算法实现
  • Sass 快速入门教程
  • Shadow DOM 内部构造及如何构建独立组件
  • text-decoration与color属性
  • tweak 支持第三方库
  • unity如何实现一个固定宽度的orthagraphic相机
  • Vue实战(四)登录/注册页的实现
  • 从输入URL到页面加载发生了什么
  • 关于List、List?、ListObject的区别
  • 回顾 Swift 多平台移植进度 #2
  • 机器学习学习笔记一
  • 计算机在识别图像时“看到”了什么?
  • 理解在java “”i=i++;”所发生的事情
  • 融云开发漫谈:你是否了解Go语言并发编程的第一要义?
  • 使用parted解决大于2T的磁盘分区
  • 阿里云服务器购买完整流程
  • 仓管云——企业云erp功能有哪些?
  • 没有任何编程基础可以直接学习python语言吗?学会后能够做什么? ...
  • ​【原创】基于SSM的酒店预约管理系统(酒店管理系统毕业设计)
  • ​第20课 在Android Native开发中加入新的C++类
  • #进阶:轻量级ORM框架Dapper的使用教程与原理详解
  • (+4)2.2UML建模图
  • (03)光刻——半导体电路的绘制
  • (el-Transfer)操作(不使用 ts):Element-plus 中 Select 组件动态设置 options 值需求的解决过程
  • (ros//EnvironmentVariables)ros环境变量
  • (九)One-Wire总线-DS18B20
  • (亲测有效)推荐2024最新的免费漫画软件app,无广告,聚合全网资源!
  • (十三)Flink SQL
  • (一)插入排序
  • (原創) 如何安裝Linux版本的Quartus II? (SOC) (Quartus II) (Linux) (RedHat) (VirtualBox)
  • (转)Google的Objective-C编码规范
  • (转)Spring4.2.5+Hibernate4.3.11+Struts1.3.8集成方案一
  • (转)Windows2003安全设置/维护