<template>
<div>
<button @click='test'>点击</button>
</div>
</tempalte>
<script setup>
import { ref, watchEffect } from 'vue'
let a = ref(true)
let b = ref(false)
watchEffect(()=> {
if(a.value || b.value) {
console.log('@@@@')
}
console.log('####')
})
function test() {
b.value = !b.value
}
</script>
请问点击按钮之后 会不会触发watchEffect 执行?
答案是: 不会因为在收集依赖的时候 由于js的特性 a.value || b.value || 语法第一个条件为真就不会在判断第二个条件 所以 b 并没有被依赖收集 所以触发b 并不会引起watchEffect 执行
以上信息均来自网络 如有侵权请练习删除