第三十九篇:Vue3 watch(ref和reactive的监视)
好家伙,
1.vue2中的watch是调用配置项,(只能写一个)
vue3中的watch是一个函数(可以写很多个)
2.watch一些用法:
这里是定义的数据
set up(){
let sum =ref(0)
let msg = ref('你好啊')
let person = reactive({
name:'张三'
job:{
j1{
salary:20
}
}
})
}
return{
..........
}
用法一:监视ref所定义的一个响应式数据
watch(sum,(newValue,oldvalue)=>
{console.log('sum变了',newValue,oldvalue)},
{immediate:true})
用法二:监视ref所定义的多个对象
watch([sum,msg],(newValue,oldvalue)=>
{console.log('sum变了',newValue,oldvalue)},
{immediate:true})
用法三:监视reactive监视reative所定义的一个响应式数据的全部属性
注意:1.此处无法获得正确的oldValue,对象拿不到oldVuale
2.默认开启深度监视?关不掉,强制开启了深度监视(deep配置无效)
watch(person,(newValue,oldvalue)=>
{console.log('sum变了',newValue,oldvalue)},
{deep:false})
用法四:监视reactive监视reative所定义的一个响应式数据的某个属性 (写成函数)
watch(()=>person.name,(newValue,oldvalue)=>
{console.log('sum变了',newValue,oldvalue)},)
用法五:监视reactive监视reative所定义的一个响应式数据的某些属性
watch([()=>person.name,()=>person.age],(newValue,oldvalue)=>
{console.log('sum变了',newValue,oldvalue)})
特殊情况:
watch(()=>person.name,(newValue,oldvalue)=>
{console.log('sum变了',newValue,oldvalue)},
{deep:true})
此处监视得失reactive定义的对象中的某个属性的对象 .
这里是普通对象了,deep配置又能用了
3.小结:1.监视reactive定义的响应式数据时:oldValue无法正确获取,强制开启了胜读监视(deep配置失败)
2.监视reactive定义的响应式数据中某个属性时:deep配置有效
第三十九篇:Vue3 watch(ref和reactive的监视)的更多相关文章
- Android UI开发第三十九篇——Tab界面实现汇总及比较
Tab布局是iOS的经典布局,Android应用中也有大量应用,前面也写过Android中TAb的实现,<Android UI开发第十八篇——ActivityGroup实现tab功能>.这 ...
- 第三十五篇:vue3,(组合式api的初步理解)
好家伙, 来一波核心概念:数据劫持是响应式的核心 1.由set up开始 (1)vue3中的一个新的配置项,值为一个函数. (2)组件中所用的到的:数据,方法,计算属性均要配置在set up中. (3 ...
- 第三十九篇-RecyclerView的使用
RecyclerView介绍 RecyclerView的出现可以替代ListView,并且比ListView更高级且更具灵活性.如果有数据集合,其中的元素将因用户操作或网络事件而在运行时发生改变,请使 ...
- 第三十九篇 Python异常处理
一. 什么是异常 异常就是程序运行时发生的错误,在程序出现错误时,则会产生一个异常,若程序没有处理它,则会抛出该异常,程序的运行也随之终止,在python中,错误触发的异常如下 错误分成两种: #语法 ...
- C++第三十九篇 -- 研究一下Windows驱动开发(二)-- 驱动程序中重要的数据结构
数据结构是计算机程序的核心,I/O管理器定义了一些数据结构,这些数据结构是编写驱动程序时所必须掌握的.驱动程序经常要创建和维护这些数据结构的实例. 一.驱动对象(DRIVER_OBJECT) 每个驱动 ...
- 第三十八篇:vue3路由
好家伙,水博客怎么说 1.0.安装:简简单单的淘宝镜像安装 装一下淘宝镜像(一般都有) npm install -g cnpm --registry=https://registry.npm.taob ...
- 第三十六篇:vue3响应式(关于Proxy代理对象,Reflect反射对象)
好家伙,这个有点难. 1.代理对象Proxy Proxy 对象用于创建一个对象的代理,从而实现基本操作的拦截和自定义(如属性查找.赋值.枚举.函数调用等). 拦截对象中任意属性的变化,包括:查get, ...
- 第三十九篇、NavBar动态隐藏、设置透明、毛玻璃效果
1.动态隐藏 - (void)viewDidLoad { [super viewDidLoad]; if ([self respondsToSelector:@selector(automatical ...
- Python之路(第三十九篇)管道、进程间数据共享Manager
一.管道 概念 管道可用于具有亲缘关系进程间的通信,有名管道克服了管道没有名字的限制,因此,除具有管道所具有的功能外,它还允许无亲缘关系进程间的通信. 先画一幅图帮助大家理解下管道的基本原理 现有2个 ...
随机推荐
- 七、服务器硬件及RAID配置实战
一.RAID磁盘阵列介绍 磁盘阵列的全名(Redundant Arrays of Inexpensive Disk,RAID),中文简称是独立冗余磁盘阵列.冗余(如果磁盘出现故障,可以保证数据不丢) ...
- ABAP CDS DDHEADANNO
- Lua5.4源码剖析:二. 详解String数据结构及操作算法
概述 lua字符串通过操作算法和内存管理,有以下优点: 节省内存. 字符串比较效率高.(比较哈希值) 问题: 相同的字符串共享同一份内存么? 相同的长字符串一定不共享同一份内存么? lua字符串如何管 ...
- halcon 基础总结(一)裁切图片并旋转图像
第一步当然是读取图像了:read_image (Image, 'C:/Users/HJ/Desktop/test_image/b.jpg') 第二步:二值化.二值化.因为我这里的物体是黑色的, ...
- SpringCloud微服务实战——搭建企业级开发框架(四十三):多租户可配置的电子邮件发送系统设计与实现
在日常生活中,邮件已经被聊天软件.短信等更便捷的信息传送方式代替.但在日常工作中,我们的重要的信息通知等非常有必要去归档追溯,那么邮件就是不可或缺的信息传送渠道.对于我们工作中经常用到的系统,里面 ...
- Tapdata x 轻流,为用户打造实时接入轻流的数据高速通道
在全行业加速布局数字化的当口,如何善用工具,也是为转型升级添薪助力的关键一步. 那么当轻量的异构数据实时同步工具,遇上轻量的数字化管理工具,将会收获什么样的新体验?此番 Tapdata 与轻流 ...
- SQLZOO练习7--Using NULL
teacher表: id dept name phone mobile 101 1 Shrivell 2753 07986 555 1234 102 1 Throd 2754 07122 555 19 ...
- shell脚本三剑客:grep、sed、awk
shell脚本三剑客:grep sed awk grep语法: grep [OPTIONS] PATTERN [FILE] 常用选项 -c 统计匹配到的 ...
- Linux系统安全与应用
补充:重定向 类型 操作符 ...
- Redis相关练习操作,redis连接池
package com.shujia.controller; import com.shujia.entity.MyTypedTuple; import com.shujia.entity.User; ...