Javascript VUEJ需要多次观看布尔

Javascript VUEJ需要多次观看布尔,javascript,vue.js,Javascript,Vue.js,我正在使用VueJs,我需要多次观看一个bool,当它是真的时,做一个动作。我发现当当前值改变为相同的值()时,手表不会触发 目前,我只是在每次操作之前将bool设置为false,在这里我可以更改值,在我的手表中我有一个if,在这里我检查bool是否为true。有人知道更好的方法吗 watch: { '$store.state.recommandationModule.recommandationSetCorrectly': function (val) { if (val) {

我正在使用VueJs,我需要多次观看一个bool,当它是真的时,做一个动作。我发现当当前值改变为相同的值()时,手表不会触发

目前,我只是在每次操作之前将bool设置为false,在这里我可以更改值,在我的手表中我有一个if,在这里我检查bool是否为true。有人知道更好的方法吗

watch: {
  '$store.state.recommandationModule.recommandationSetCorrectly': function (val) {
    if (val) {
      // Do action
    }
  }
}

当您将一个被动项分配给它已经具有的相同值时,不会发生任何事件。你需要做点什么来抓住那些任务

你可以用a来做这个。当您尝试为变量赋值时,它将被调用。您只需要确保设置了计算变量,而不是它所基于的存储变量

newvue({
el:“#应用程序”,
数据:{
storeStateMock:是的,
trueCount:0,
更改计数:0
},
计算:{
建议正确设置:{
get(){返回this.storeStateMock;},
集合(v){
如果(v){++this.trueCount;}
this.storeStateMock=v;
}
}
},
观察:{
建议设置正确(){
++这是变化计数;
}
},
创建(){
设置间隔(()=>{
this.RecommendationSetRightly=Math.random()>0.5;
}, 1200);
}
});

{{RecommendationSetRightly}}{{trueCount}}{{changeCount}}

听起来好像您有一个设置布尔值的事件,您在这里的操作也应该侦听该事件。@RoyJ我有多个事件,其中我将布尔值更改为true或false。如果布尔变为他以前的样子,手表不会触发,但我需要采取行动,即使布尔是真的,我也要再次变为真的。计数可以奏效,但我不知道这是否是最好的主意,也不知道这是否干净。此外,bool需要在商店中,因为它可以在多个Vue中使用。