vue3 中watch和watchEffect

监听:首先你要知道监听的是谁

1、下边是监听search变量的例子,后边的函数newSearch和prevSearch这两个形参,当然名字可以自己定义,newSearch是新值,prevSearch是原先的值,如下






vue3 中watch和watchEffect_第1张图片

 2、下边监听的是多个对象,用数组的形式,如下






watch([search,names],([newSearch,newNames],[prevSearch,prevNames])=>{
    console.log("watch函数触发了",newSearch,prevSearch,newNames,prevNames);
})

监听的对象和后边的函数中的参数是对应的关系。

vue3 中watch和watchEffect_第2张图片

3、watchEffect:默认初始化会执行一次 ,和watch不同的是你不需要指定监听某个属性,而是在回调函数中应用了某个属性,只要这个属性发生变化就会监听执行。






watchEffect(()=>{

console.log("watchEffect触发了"+search.value);

})

括号中不需要指定监听的属性

4、停止监听






将监听的函数定义一个属性去接收,然后再定义一个函数里面去调用这个函数就可以停止监听。

const stopEffect = watchEffect(()=>{

console.log("watchEffect触发了"+search.value);

})

const handleClick=()=>{

stopWatch();

stopEffect();

}

你可能感兴趣的:(vue,vue.js,watch,watchEffect,监听)