Vue3-14 watch监视对象及对象属性,watchEffect

文章目录

watch 监听

监视 reactive

reactive 的一个弊端:

不能整体修改数据

左边ref相当于替换了整个人;

右边reactive相当于人没换,只是换了属性。

监视reactive对象,默认是开启深度监视的,是不能关闭的。

监听对象前后的值为什么是相同的?

他们修改的是属性,对象的地址值是没变的,等到打印的时候,拿到的就是最新的数据了。

监视对象属性

watch 监听对象的话, 监听的是对象的地址值的变化,不是对象某个属性的变化。

监视数组

watchEffect

watch 必须明确指出我监视什么

watchEffect 一上来就会监视,相当于watch 加了个立即执行。

会自动分析需要监视哪些数据的。

watchEffect 是回调一个函数:

js 复制代码
const stopWatch = watchEffect(()=>{

})
js 复制代码
// 用watchEffect实现,不用
const stopWtach = watchEffect(()=>{
  // 室温达到50℃,或水位达到20cm,立刻联系服务器
  if(temp.value >= 50 || height.value >= 20){
    console.log(document.getElementById('demo')?.innerText)
    console.log('联系服务器')
  }
  // 水温达到100,或水位达到50,取消监视
  if(temp.value === 100 || height.value === 50){
    console.log('清理了')
    stopWtach()
  }
})
相关推荐
赵庆明老师8 天前
vben开发入门6:tsconfig.json
json·vue3·vben
赵庆明老师8 天前
vben开发入门5:vite.config.ts
前端·html·vue3·vben
沙振宇9 天前
【Web】使用Vue3+PlayCanvas开发3D游戏(十二)渲染PCD点云可视化模型
3d·vue3·点云·pcd
是席木木啊12 天前
告别console.log!Vue3项目日志框架选型指南
前端·vue3·日志框架
程序员-南12 天前
解决 Vue3 中 keep-alive 缓存问题的方法
缓存·vue3
qq_120840937113 天前
Three.js 模型加载稳定性实战:从资源失败到可用发布的工程化方案
前端·javascript·vue.js·vue3·three.js
qq_120840937113 天前
Three.js 模型加载与线上稳定性实战:路径、跨域、缓存与降级全链路指南
开发语言·javascript·缓存·vue3
qq_120840937113 天前
Vue3 + Three.js 实战入门:从零搭建可交互3D场景(含模型加载与性能优化)
javascript·3d·vue3·交互
qq_120840937113 天前
Vue3 + Three.js 入门实战:从 0 到 1 搭建可交互的 3D 场景(含模型加载与性能优化)
javascript·3d·vue3·交互·webgl·gltf
曲幽14 天前
Vue 3 组件通信,别只会用 Props 和 Emits 了,这几个狠活儿你得看看
vue3·inject·provide·pinia·v-model·props·mitt·emit