<template><h1>当前n值为:{
{n}}</h1><h1>当前求和为:{
{sum}}</h1><button @click="sum++;n--">点我+1</button><h2>姓名:{
{person.name}}</h2><h2>年龄:{
{person.age}}</h2><h2>薪资:{
{person.job.j1.salary}}k</h2><button @click="person.age++">点我加一岁</button><button @click="person.job.j1.salary++">点我涨薪</button>
</template><script>import {ref,reactive,watch} from 'vue'export default {name:'Demo',setup(){let sum = ref(0)let n = ref(0)let person = reactive({name:'张三',age:18,job:{j1:{salary:30}}})/*watch能传三个参数:第一个是监视的对象第二个是回调第三个是配置(immediate、deep)坑:直接监视reactive定义的响应式数据,则 oldValue 错误 且 #强制!开启深度监视监视reactive定义的响应式数据中的某个属性时,第一个参数不能用函数了监视reactive定义的响应式数据中的某些属性时,默认不开启深度监视,数组中的每个监视对象都得是函数凡是监视的对象是Object,oldValue都废*/// 情况一:监视单个ref所定义的响应式数据watch(sum,(v)=>{console.log('sum的值变了',v)})// 情况二:监视多个ref所定义的响应式数据watch([sum,n],(newV,oldV)=>{console.log(newV,oldV)})// 情况三:监视reactive所对应的响应式数据,全部watch(person,(n,o)=>{console.log(n,o)},{deep:false}) // 只要监视对象就无法正确获取oldValue,深度监视锁死(deep配置无效,默认开启)// 情况四:监视reactive所对应的响应式数据中的某个属性(值为对象)watch(person.job,(n,o)=>{console.log(n,o)})// 情况五:监视reactive所对应的响应式数据中的某些属性(值为对象)watch([()=>person.age,()=>person.job.j1],(n,o)=>{console.log(n,o)},{deep:true}) // 默认deep是falsereturn {sum,n,person}}}
</script>
详细解决方案
Vue3 watch函数中的坑
热度:9 发布时间:2023-12-04 08:54:43.0
相关解决方案
- vs2005里面变量查看器(watch)窗口在什么地方,该怎么处理
- Http watch pro 应用技巧
- jbuilder的调试有关问题。用了断点进行调试,但是Add Watch 是灰色的不可用,请教如何做
- GitHub 上 Fork、Watch、Star 是什么意义
- Vue 里的 computed 和 watch 的区别 ?
- vue3.0中使用postcss-pxtorem
- uni-app vue2 项目迁移 vue3,必须适配的部分
- vue3 teleport传送门
- Vue3.0使用
- vue3[Vue warn]: Component provided template option but runtime compilation is not supported in this
- zookeeper读书笔记七 watch
- vue3.0 项目中 el-select ios 无法唤起软键盘解决
- vue3.0中如何载入自定义指令
- vue3 输入框禁止输入表情
- vue开发computed,watch,method执行的先后顺序
- vue---watch(监听)的基本使用
- Vue3-拉开序幕setup
- Vue computed 和 watch
- Vue3 通过自定义指令实现图片懒加载
- Vue3 watch函数中的坑
- vue3,watchEffect和watch监听
- Vue2 vs Vue3 插槽
- vue3.0中setup使用(两种用法)
- vue3 实现数据增删改
- Vue3.0 Router 路由
- vue3 你不知道的隐藏的小知识
- vue3 element-plus/icons图标的逐步引入和全局引入
- Vue3.x 之getCurrentInstance
- vue3.0父组件调用子组件的方法
- 【Vue 源码学习笔记】-- Watch