位置: IT常识 - 正文

Vue3中的watch监听(vue中watch监听对象的变化)

编辑:rootadmin
Vue3中的watch监听

目录

一、监听基础ref类型

1、监听单个ref数据

2、 监听多个ref数据

二、监听reactive类型

1、监听对象中单个属性

 2、监听对象中多个属性

  3、同时监听ref基本类型数据和reactive对象中的属性

 4、监听整个对象

  5、监听对象中值为对象的属性

三、watchEffect


一、监听基础ref类型1、监听单个ref数据

推荐整理分享Vue3中的watch监听(vue中watch监听对象的变化),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue watch监听localstorage变化,vue监听watch监听全局对象,vue watch监听,vue的watch监听props,vue的watch监听props,vue watch监听,vue3中的watch监听路由,vue中watch监听对象的变化,内容如对您有帮助,希望把文章链接给更多的朋友!

2、 监听多个ref数据

二、监听reactive类型1、监听对象中单个属性

监听 user.more.iPhone 属性,那么只有当iPhone属性发生变更时,才会触发 watch 方法,其他属性变更不会触发 watch 方法。注意,此时的第一个参数是一个箭头函数。

 2、监听对象中多个属性

  3、同时监听ref基本类型数据和reactive对象中的属性

 

 4、监听整个对象

当监听整个对象时,只要这个对象有任何修改,那么就会触发 watch 方法。无论是其子属性变更(如 user.name),还是孙属性变更(如 user.more.iPhone)...,都是会触发 watch 方法的。

Vue3中的watch监听(vue中watch监听对象的变化)

  5、监听对象中值为对象的属性

方式1:不用箭头函数,则可以不用deep:true

 方式二【推荐用箭头函数】:用箭头函数时,则必须加上{deep:true}才能触发监听

我们发现newValue和oldValue的值都是一样的, 这是因为它们的引用指向同一个对象/数组

 推荐用箭头函数监听对象的原因就是,我们可以通过以下方式来使新旧值不一样

如果直接监听对象,别说监听对象的改变了,直接原对象都监听不到,如下:

 总结:监听对象时,如果不关心旧值,那么直接监听对象更方便,因为不用手动设置deep为true;如果关心旧值,那么需要使用箭头函数,并序列化,设置deep:true

三、watchEffect

不用指明监视哪个属性,监视的回调用到哪个属性,就去监视哪个属性

watch可以访问新值和旧值,watchEffect不能访问。watch需要指明监听的对象,也需要指明监听的回调。watchEffect不用指明监视哪一个属性,监视的回调函数中用到哪个属性,就监视哪个属性。watch只有监听的值发生变化的时候才会执行,但是watchEffect不同,每次代码加载watchEffect都会执行。

<template> <div>nums:<input v-model="nums" /></div> <div>user.age:<input v-model="user.age" /></div> <button @click="user.more.iPhone = 22222">改变more</button></template><script setup>const nums = ref(1);const user = reactive({ name: "张三", age: 23, more: { iPhone: 1111, address: "aaa", },});watchEffect(() => { const x1 = nums.value; const x2 = user.age; const x3 = user.more.iPhone; console.log("watchEffect监听的回调执行了...");});watchEffect(() => { console.log("222222222...");});</script>
本文链接地址:https://www.jiuchutong.com/zhishi/293750.html 转载请保留说明!

上一篇:通往海滩的木板路,德国叙尔特岛 (© Kerstin Bittner/Westend61/Offset by Shutterstock)(通往海滩的木板有什么用)

下一篇:Antv/X6图编辑器的应用——流程图实现(anjedi编辑器)

  • 论坛发帖需要注意的四大技巧(论坛发帖步骤)

    论坛发帖需要注意的四大技巧(论坛发帖步骤)

  • 荣耀yoyo如何打开(荣耀yoyo玩法)

    荣耀yoyo如何打开(荣耀yoyo玩法)

  • 抖音直播怎么放视频(抖音直播怎么放电影)

    抖音直播怎么放视频(抖音直播怎么放电影)

  • 微信语音前几秒录不上(微信语音前几秒听不见怎么回事)

    微信语音前几秒录不上(微信语音前几秒听不见怎么回事)

  • 录音声音小怎么调大(录音声音小怎么调)

    录音声音小怎么调大(录音声音小怎么调)

  • 微信恢复默认灰色背景(微信恢复默认灰色模式)

    微信恢复默认灰色背景(微信恢复默认灰色模式)

  • 3d打印笔的耗材是什么(3d打印笔的耗材用完了怎么办)

    3d打印笔的耗材是什么(3d打印笔的耗材用完了怎么办)

  • 小爱音箱上有几款游戏(小爱音箱上有几个电池)

    小爱音箱上有几款游戏(小爱音箱上有几个电池)

  • 拼多多打不开网页怎么回事(拼多多打不开网页链接)

    拼多多打不开网页怎么回事(拼多多打不开网页链接)

  • 微信bug什么意思(微信bug什么意思啊)

    微信bug什么意思(微信bug什么意思啊)

  • 如何删除微信骰子表情(微信中怎样删除)

    如何删除微信骰子表情(微信中怎样删除)

  • 苹果电话静音怎么取消(苹果电话静音怎么才能让电话响铃)

    苹果电话静音怎么取消(苹果电话静音怎么才能让电话响铃)

  • airpods怎么看是不是国行(airpods怎么看是否在充电)

    airpods怎么看是不是国行(airpods怎么看是否在充电)

  • 怎么查看支付宝收款码详细信息(怎么查看支付宝账号)

    怎么查看支付宝收款码详细信息(怎么查看支付宝账号)

  • 网线直接连接路由器能用吗(网线直接连接路由器速度会降吗)

    网线直接连接路由器能用吗(网线直接连接路由器速度会降吗)

  • 打电话对方老关机怎么回事(打电话对方总是关机是不是被拉黑了)

    打电话对方老关机怎么回事(打电话对方总是关机是不是被拉黑了)

  • 微信警告教育处理是什么(微信警告教育处罚严重吗)

    微信警告教育处理是什么(微信警告教育处罚严重吗)

  • 微型计算机的主要硬件(微型计算机的主频很大程度上决定了其运行速度,它是指)

    微型计算机的主要硬件(微型计算机的主频很大程度上决定了其运行速度,它是指)

  • 小度如何下载其他软件(小度如何下载其他应用软件)

    小度如何下载其他软件(小度如何下载其他应用软件)

  • Reno Ace怎么进行慢动作拍摄(reno ace rom)

    Reno Ace怎么进行慢动作拍摄(reno ace rom)

  • iphone11运行内存多大(iPhone11运行内存怎么看)

    iphone11运行内存多大(iPhone11运行内存怎么看)

  • mate9nfc感应区在哪里(mate9的nfc感应区)

    mate9nfc感应区在哪里(mate9的nfc感应区)

  • 为什么电脑开启到一半就突然黑屏?(为什么电脑开启了摄像头但是看不见)

    为什么电脑开启到一半就突然黑屏?(为什么电脑开启了摄像头但是看不见)

  • Vue中如何使用v-model双向数据绑定select、checked等多种表单元素(vue中如何使用axios)

    Vue中如何使用v-model双向数据绑定select、checked等多种表单元素(vue中如何使用axios)

  • vue-nginx刷新404问题

    vue-nginx刷新404问题

  • Vue - v-for 循环渲染多个 “重复“ 子组件(仅 ref 不同,this.$refs.xx 使用时依然能准确找到子组件)将子组件 ref 设为动态,这样每个子组件都是 “独立“ 的!详细教程(vue循环数组渲染列表)

    Vue - v-for 循环渲染多个 “重复“ 子组件(仅 ref 不同,this.$refs.xx 使用时依然能准确找到子组件)将子组件 ref 设为动态,这样每个子组件都是 “独立“ 的!详细教程(vue循环数组渲染列表)

  • mysql覆盖索引如何理解(sql 覆盖索引)

    mysql覆盖索引如何理解(sql 覆盖索引)

  • 车辆购置税会计科目怎么做账
  • 私车公用车险是个人名字可报销吗
  • 金税四期记账报税流程
  • 公司工资0申报
  • 财产租赁合同印花税率多少
  • 异地预缴税款怎么抵扣
  • 本年利润包含增值税吗
  • 生产车间人员工资属于什么费用
  • 已认证发票红冲进项税分录
  • 贴现利息的计算题
  • 多计提的固定资产折旧
  • 营改增后企业取得的不动产可以抵扣进项
  • 去税务局增加税目需要带什么资料
  • 生产企业上税如何计算?
  • 技术开发费税收优惠政策
  • 增值税报表上填写什么
  • 原始凭证是出纳粘贴还是会计粘贴
  • 劳务分包可以开劳务费吗
  • 小规模税收减免
  • 电子发票无法预览怎么弄
  • 机动车购置税怎么收
  • c盘appdata怎么清理
  • php 多维数组转换成字符串
  • mac可以制作win启动盘吗
  • 代收的税金如何记账
  • pytorch说明文档
  • laslajas大教堂
  • pace框架
  • js实现dialog
  • 2023前端面试题目
  • kill命令机制
  • blkid命令详解
  • 租赁房屋开具发票商品名称
  • 企业财政拨款所得免税吗
  • php 错误提示
  • vue 生产环境
  • 帝国cms扣除会员怎么办
  • php_fileinfo不支持
  • 月末库存商品成本计算
  • 工程产值是怎么算的
  • 公司滞纳金员工承担怎么做账
  • access speed
  • mysql怎么修改
  • 应收账款未计提坏账能直接核销
  • 销售商品的运费的税费计入进项税额
  • 员工奖励账务处理流程
  • 暂估成本后发票怎么处理
  • 小规模购买税控盘分录怎么写
  • 颁给供应商的奖项
  • 建筑工程拨款申请模板
  • 房地产会计如何报税
  • mysql 5.7.11 zip安装配置方法图文教程
  • win2000服务器
  • windows key查询
  • 小黑马科技
  • win8.1 开始
  • 如何在mac上保存文件
  • win8蓝牙设置在哪
  • windows102021年更新
  • windows8设置自动关机
  • win8网络连接受限怎么处理
  • win 7笔记本连接投影仪
  • unity 3d教程
  • 解决Extjs4中form表单提交后无法进入success函数问题
  • 代码的历史
  • jquery插件开发方法
  • 自动关机的
  • unity创建射线
  • android sql语句
  • 统计重复出现的次数
  • 在javascript中如何定义并调用函数
  • linux进程监控方法
  • jquery鼠标点击
  • javascript教学视频
  • 用javascript
  • js编写一个标准的单例模式类
  • 南京电费余额查询
  • 税务协查工作亮点
  • 收入较去年同期增长怎么算
  • 国税和地税归哪里管
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设