Vue3的watch、watchEffect以及computed


一、Watch监听

语法:watch(监听源 | [多个], (val, oldVal) => {}, {immediate?: false, deep: false})

watch写法上支持一个或者多个监听源,这些监听源必须只能是getter/effect函数,ref数据,reactive对象,或者是数组类型

以下为watch的简单运用

二、watchEffect监听

它立即执行传入的一个函数,同时响应式追踪其依赖,并在其依赖变更时重新运行该函数。

以下是简单的例子:

watch 和 watchEffect的区别

  • 两者都可以监听 data 属性变化;

  • watch 需要明确监听哪个属性

  • watchEffect 会根据其中的属性,自动监听其变化。

三、computed计算属性的用法