watch函数
与vue2.x中配置功能一致
两个小坑:
监视reactive的响应式数据时:oldvalue无法正常获取,强制开启了深度监视(deep配置无效)
监视reactive定义的响应式数据中某个属性时:deep配置无效
let person = reactive({
name:'张三',
age:18,
sex:'男',
job:{
jip:{
salar:20
}
}
})
// 监视一个reactive响应式的全部属性
watch(person,(newValue)=>{
console.log('person变化了1',newValue)
})
// 监视一个reactive响应式的单个属性、
watch(()=>person.name,(newValue,oldValue)=>{
console.log('person.name变化了2',newValue,oldValue)
})
// 监视一个reactive响应式的某些属性、
watch([()=>person.name,()=>person.age],(newValue,oldValue)=>{
console.log('person.name和person.age变化了3',newValue,oldValue)
})
//监视一个reactive响应式的对象属性
watch(()=>person.job,(newValue)=>{
console.log('person.job变化了4',newValue)
},{deep:true})
watchEffect
watch的套路时:既要指明监视的属性,也要指明监视的回调
watchEffect的套路是:不用指明那个属性,监视的回调中用到那个属性,那就监视那个属性。
watchEffect有点像computed:
但computed更注重的是计算出来的值(回调函数的返回值),所以必须要写返回值
而watchEffect更注重的是过程(回调函数的函数体),所以不用写返回值
let person = reactive({
name:'张三',
age:18,
sex:'男',
job:{
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理