观看计算的代码 属性 似乎从来没有 运行
Code for watched computed property never seems to run
我正在观察计算 属性 返回状态变量。
我确信这个状态变量会随着我所做的某些事情而改变。然而,我的 watch: {}
中的 console.log()
代码从未执行:
computed: {
simulation () {
return this.$store.state.simulation
}
},
watch: {
simulation () {
console.log('simulation changed:')
}
}
我做错了什么?
通过我们在原 post 评论中的对话,我们发现正在更改 simulation
的 属性,而不是整个 simulation
对象。要检测此类更改,OP 只需要 watch
正在更改的 simulation
的特定 属性,而不是整个 simulation
对象。
如果您的 this.$store.state.simulation
是对象,则无法监视对象的变化 属性。您可以观察对象的变化(当 this.$store.state.simulation = newVal
,但不是 this.$store.state.simulation.anyProp = newVal
时)
你应该使用深度监视 (https://vuejs.org/v2/api/#watch)
我正在观察计算 属性 返回状态变量。
我确信这个状态变量会随着我所做的某些事情而改变。然而,我的 watch: {}
中的 console.log()
代码从未执行:
computed: {
simulation () {
return this.$store.state.simulation
}
},
watch: {
simulation () {
console.log('simulation changed:')
}
}
我做错了什么?
通过我们在原 post 评论中的对话,我们发现正在更改 simulation
的 属性,而不是整个 simulation
对象。要检测此类更改,OP 只需要 watch
正在更改的 simulation
的特定 属性,而不是整个 simulation
对象。
如果您的 this.$store.state.simulation
是对象,则无法监视对象的变化 属性。您可以观察对象的变化(当 this.$store.state.simulation = newVal
,但不是 this.$store.state.simulation.anyProp = newVal
时)
你应该使用深度监视 (https://vuejs.org/v2/api/#watch)