【发布时间】:2021-04-18 16:32:09
【问题描述】:
我已经在设置中设置了这个反应值
const refValue = ref('foo');
并为其设置watch 函数
watch(refValue, function() {
console.log("activaded")
});
如果我手动更改值,watch 函数将不会被激活,
只有在添加改变值的函数时才会激活
const changeValue = function changedValue() {
console.log("fired");
return refValue.value = 12;
}
为什么只有在使用函数更改值时才会触发watch,
我认为 const refValue = ref('foo'); 是被动的,所以watch 应该检测到所有更改
import { ref,watch } from 'vue';
export default {
setup() {
const refValue = ref('foo');
watch(refValue, function() {
console.log("activaded")
});
const changeValue = function changedValue() {
console.log("fired");
return refValue.value = 12;
}
return {
refProp: refValue,
changeFuncton: changeValue
};
},
};
【问题讨论】:
标签: javascript watch vuejs3 vue-composition-api