watchEffect和watch使用场景上怎么区分?
这两个api的使用我是明白的,但我有点分不清什么场景用watchEffect更好呢?
比如这样的场景:监听某个值更新触发事件并在进入页面时就生效。
那这种情况以下两种写法都能实现:
const repo = ref<string | null>(null)const emit = defineEmits(['handleFilter'])
watch(repo, (value: string | null, prevValue?: string | null) => {
console.log(value, prevValue)
emit('handleFilter', value)
}, { immediate: true })
watchEffect(() => {
console.log(repo.value)
emit('handleFilter', repo.value)
})
这时候用哪种更合适呢?
回答:
一个手动指定依赖,一个自动收集依赖
回答:
区别的话文档已经说了https://v3.cn.vuejs.org/api/c...
使用哪种随你喜欢,如果不需要使用先前值并且希望立即执行就用watchEffect,可以少写一点代码。
watch的自由度更高,watchEffect相当于封装了一层
以上是 watchEffect和watch使用场景上怎么区分? 的全部内容, 来源链接: utcz.com/p/937082.html