watch
监视数据中某个属性的变化,用箭头函数
watch(()=>person.age,(newValue,oldValue)=>{ console.log(newValue,oldValue); })
监视的是reactive定义的对象的某个属性(也是一个对象),所以deep:ture有效
reactive定义的数据交给watch时,此处无法正确获取oldValue
reactive强制开启深度监视,ref不会默认开启深度监视(在他包含一个对象的时候),所以需要手动
watch(()=>person.job,(n,o)=>{ console.log(n,o); },{deep:true})
ref定义对象的时候,可以手动开启深度监视
watch(sum,(newValue,oldValue)=>{ console.log(newValue,oldValue); },{ immediate:true, deep:true })
监视的回调调用这些属性就是默认监视这些属性
watchEffect(()=>{ const x1 = sum.value; console.log("执行watchEffecct"); })