位置: 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编辑器)

  • 劳务公司临时工工资需要申报吗
  • 行政单位总账科目
  • 企业如何实现合理利润
  • 房地产企业交纳所得税吗
  • 公司购买服装
  • 原始凭证审核的内容
  • 企业融资租赁设立条件
  • 运输费计入采购成本的分录
  • 公司付款给个人一定要取得发票吗
  • 认可的发票验证怎么弄
  • 烟酒销售公司要交哪些税
  • 外出经营活动税收管理证明和跨区域涉税事项报告表
  • 购买垃圾袋的会计分录
  • 报个税系统叫啥
  • 建筑公司材料费属于什么科目
  • 一般纳税人是否享受小型微利企业优惠政策
  • 个体户生产经营所得税率表2023
  • 金融服务公司收取金融服务费
  • 收到客户赔偿款计入什么科目
  • windows4月更新
  • win10系统中怎么共享文件
  • 微软不包括
  • s3tray2.exe - s3tray2是什么进程 有什么用
  • 公会经费缴费单位应于每月
  • 出售债券税费处理方法
  • 博茨瓦纳热吗
  • php格式转换
  • Sa-Token v.1.31.0 新增拦截器 SaInterceptor 功能说明,以及旧代码迁移示例
  • 购入电脑可以入成本里吗
  • php redis常用命令
  • framework3.5怎么打开
  • vue写的购物车详细步骤
  • pytorch基础
  • pythontime模块
  • php文件上传下载代码
  • php实现支付宝支付
  • 以前年度损益调整
  • nfs4挂载
  • 房租费可以一次性摊销吗
  • 现金等价物是指企业持有的
  • 折扣店商场
  • 小规模纳税人利润超过300万
  • 固定资产的核算内容包括
  • 合同资产科目包含增值税吗
  • 银行存款如何做到4个点
  • 小规模做账要做应交税费吗
  • mysql子查询详解
  • 企业银行存款的利息收入计入财务费用的借方A对B错
  • 住房公积金指的是什么意思
  • 房地产项目完工清算报告
  • 固定资产计提折旧表
  • 企业的借款利息费用,扣除标准是?
  • 收到返利怎么做会计分录
  • 模具成本核算汇总表
  • 建筑材料资源税
  • 跨月凭证出错如何调整
  • 实收资本的账务处理会影响什么
  • 收到银行承兑汇票计入什么科目
  • win10预览版绿屏重启解决
  • win7电脑频繁自动重启是什么原因造成的
  • Windows虚拟内存不足
  • ntfs硬盘分区整数
  • win8.1 升级
  • members-area.exe是什么进程 members-area进程查询
  • Mtdacq.exe - Mtdacq是什么进程 有什么用
  • msmpeng.exe是什么进程
  • 网站备份是什么意思
  • jquery插件怎么用到自己的网站
  • opengl光照算法
  • js控制display属性
  • koa nodejs
  • javascript如何定义一个函数
  • shell脚本 -ne 0
  • javascript例题
  • jquery获取table指定的行列
  • WINDOWS中使用磁盘清理的主要作用是为了什么
  • js闭包的定义和用途
  • 贵州省网上税务局要那个版本
  • 长沙税务注销公示期是多久
  • 山西省国家税务总局山西省电子税务局
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设