怎么使用vue3.0中的watch侦听器
发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,本篇文章为大家展示了怎么使用vue3.0中的watch侦听器,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。前言虽然计算属性在大多数情况下更合适,但有时也需要一
千家信息网最后更新 2025年02月02日怎么使用vue3.0中的watch侦听器侦听reactive定义的响应式数据
本篇文章为大家展示了怎么使用vue3.0中的watch侦听器,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
前言
虽然计算属性在大多数情况下更合适,但有时也需要一个自定义的侦听器。这就是为什么 Vue 通过watch选项提供了一个更通用的方法,来响应数据的变化。当需要在数据变化时执行异步或开销较大的操作时,这个方式是最有用的。
侦听器和计算属性的区别
计算属性里不可以做异步操作,侦听器可以做异步操作,相当于计算属性的升级版
vue3如何使用watch呢?
基本使用
watch侦听器页面
普通侦听数据:{{ num }}
script
import { ref, watch } from 'vue'// 记得用到什么就要导入什么vue3的新特性,按需调用 setup() { const num = ref(0) // watch(要侦听的数据,回调函数) watch(num, (v1, v2) => { // v1 是改变以后的新值 // v2 是改变前的值 console.log(v1, v2) // 要点:侦听普通函数可以获取修改前后的值,被侦听的数据必须是响应式的 }) // 单机事件 const butFn = () => { num.value++ } return { butFn, num }}
监听多个响应式数据
const num = ref(0) const num2 = ref(20) watch([num, num2], (v1, v2) => { // 存入的结果是一个数组,结果返回的也是一个已数组格式的结果 // v1是最新结果的数组 // v2是旧数据的数组 console.log('v1', v1, 'v2', v2) // 总结:可以得到更新前后的值,侦听的结果也是数组数据顺序一致 })
侦听reactive定义的响应式数据
const obj = reactive({ msg: '奇奇怪怪可可爱爱' }) watch(obj, () => { // 只能获取到最新的值 console.log(obj.msg) })
总结:如果侦听对象,那么侦听器的回调函数的两个参数是一样的结果,表示最新的对象数据,此时也可以直接读取被侦听的对象,那么得到的值也是最新的。
监听reactive定义的响应式数据的某一个属性
const obj = reactive({ msg: '奇奇怪怪可可爱爱' }) watch(() => obj.msg,(v1, v2) => { // v1 就是被监听数据的最新值 // v2 就是被监听数据的原有值 console.log(v1, v2) // 总结:如果侦听对象中当个属性,需要使用箭头函数的方式 // 侦听更少的数据有利于提高性能 } )
配置选项用法
const obj = reactive({ msg: { info: 'ooo' } }) watch(() => obj.msg,(v1, v2) => { console.log(v1, v2) }, { // 首次渲染组件就触发一次 immediate: true, // 开启深度监听,对象里面的数据如果发生变化也会被侦听到 // 如果监听的数据是一个比较长的表达式,那么需要用一个函数的方式 // 但是写成函数形式之后,里层的数据变化不到,所以需要添加deep选项 deep: true } )
上述内容就是怎么使用vue3.0中的watch侦听器,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。
数据
侦听器
函数
属性
结果
监听
对象
数组
就是
变化
方式
普通
内容
可可
技能
爱爱
知识
奇奇
合适
简明
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
三级数据库技术第四章
数字网络安全的失效应急措施
软件开发产品型公司好不好
mysql创建用户并指定数据库
数据库停止服务
服务器认证的安全性
db2数据库在线备份
embl数据库登录网址
完美网络技术
日本软件开发常用语言
km软件开发服务公司
云软件开发技术方案书
软件开发公司财务部工作职责
智能取衣柜软件开发
提高数据库程度
韩国大学网络安全专业
游戏软件开发区网红
内网服务器ip获取
山东啪嗒软件开发有限公司
证券公司 软件开发 意义
软件开发包含上架吗
django现有的数据库
mc信仰之跃服务器
文山互联网科技招生
输入学号前加0怎么加数据库
陈培浩深圳科技互联网
数据库为表创建外键约束
英雄联盟闪退后连不上服务器
江苏大数据软件开发价格
文国家网络安全宣传周