vue3.0 watch监听与watchEffect函数

news/2024/10/17 14:17:49/

目录

watch监听

watchEffect函数


watch监听

  • 监听ref定义的一个响应式数据(ref函数定义的数据不要.value)
let num = ref(1);watch(sum, (newVal,oldVal) => {console.log(newVal,oldVal);
})
  • 监听ref定义的多个响应式数据
let num = ref(1);
let str = ref('拉拉拉');watch([sum, str], (newVal,oldVal) => {console.log(newVal,oldVal);// newVal和oldVal返回的是监听的数据修改之前和修改之后的数组
})
  • 初始化页面时执行一次监听 (immediate)
let num = ref(1);watch(sum, (newVal,oldVal) => {console.log(newVal,oldVal);
},{immediate: true})
  • watch监听reactive定义的响应式数据
  1. 无法获取oldValue数据
  2. 强制开启了深度监视,且deep参数配置无效
let info = reactive({name: "韩梅梅",age : 18,
});watch(info, (newVal) => {console.log(newVal);
})
  • watch监听reactive定义的响应式数据中的某个属性
let info = reactive({name: "韩梅梅",age : 18,
});watch(() => info.age, (newVal, oldVal) => {console.log(newVal, oldVal);
})
  •  watch监听reactive定义的响应式数据中的某些属性
let info = reactive({name: "韩梅梅",age : 18,
});watch([() => info.name, () => info.age], (newVal, oldVal) => {console.log(newVal, oldVal);
})
  • watch监听reactive定义的对象中的某个属性,deep配置生效
let info = reactive({name: "韩梅梅",age : 18,obj: {obj1: {str: "字符串"}},
});watch(() => info.age, (newVal, oldVal) => {console.log(newVal, oldVal);
})

watchEffect函数

let name = ref('韩梅梅');watchEffect(() => {let newName = name;// 函数体中使用到了谁就相当于监听谁,因为newName使用了ref函数定义的name数据,所以相当于监听了name数据
});

http://www.ppmy.cn/news/55610.html

相关文章

创作纪念日让 AI 与我共同记录下今天 — 【第五周年、1460天】

今天正是五一,收到一条消息? 五一还要我加班 😏? 喔,原来是 CSDN 给我发的消息呀!我在 CSDN 不知不觉已经开启第五周年啦! 目录 1.机缘2.收获3.日常4.我与 AI 的“合作”part Ipart II Super al…

Pythonic|collections.namedtuple的使用和对 list 对象Pythonic的的操作

collections collections是Python内建的一个集合模块,提供了许多有用的集合类和方法。 可以把它理解为一个容器,里面提供Python标准内建容器 dict , list , set , 和 tuple 的替代选择。 namedtuple() : 创建一个命名元组子类的工厂函数 de…

博世中国创新软件开发中心 BCSC

Bosch China Innovation and Software Development Campus 博世中国创新软件开发中心 BCSCWelcome all CSDN friends to contact me via private message,期待优秀的你,投递卓越CV,join BCSC,一起擎软件! 拓未来&#…

IDE - Android Studio/Xcode历史版本下载

文章目录 前言Android Studio1. 历史版本下载2. 文件完整性校验 Xcode1. 历史版本下载2. 网络环境模拟工具2.1 下载2.2 安装2.3 卸载 最后 前言 最近升级开发工具老是遇到各种兼容性问题导致需要降回老版本,Xcode历史版本下载方便倒还好,Android Studio…

opengauss编译和使用oracle_fdw

opengauss虽然继承自postgresql9.2,但由于做了魔改,网上通用的从oracle_fdw源码编译安装到postgresql的方法,是否成功的应用到opengauss,并不一定,今天试了一下,参照opengauss官网文档(其实写的…

Spring 管理 Bean-IOC--基于注解配置 bean

目录 Spring 管理 Bean-IOC--基于注解配置 bean ● 基本介绍 ● 组件注解的形式有 代码演示--了解注解 UserDao UserService UserAction MyComponent 配置 beans.xml 注意 测试 注意事项和细节说明 自动装配 基本说明 应用实例需求 UserService UserAction 配置…

Linux系统主要目录

Linux系统中主要的目录,其中某些目录在不同的Linux发行版中可能有所不同。 目录名称作用bin存放常用命令boot存放引导系统相关的文件dev存放设备文件etc存放系统配置文件home存放用户的主目录lib存放系统共享库lib64存放系统共享库,用于64位系统lostfou…

bito ai 使用vue2 写一个弹框插件

使用vue2,写一个消息弹框的插件,使用vue.use()导入插件,要求插件全局可使用,使用this就可以在vue页面调用,这个消息弹窗有两个按钮,一个取消,一个确定,点击取消消息提示消失&#xf…