VueJS:监视两个属性

fnvucqvd  于 2023-03-09  发布在  Vue.js
关注(0)|答案(2)|浏览(150)

假设我有两个数据属性:

data() {
  return {
    a: false, 
    b: false, 
  }
}

ab同时变为true时,我想执行一个相关的任务。
如何在Vue中使用watch方法来实现这一点?

drnojrws

drnojrws1#

观察计算值。

computed:{
    combined(){
        return this.a && this.b
    }
}
watch:{
    combined(value){
        if (value)
            //do something
    }
}

有一种短手为上述使用$手表。

vm.$watch(
  function () {
    return this.a + this.b
  },
  function (newVal, oldVal) {
    // do something
  }
)
wqsoz72f

wqsoz72f2#

这和@Bert建议的方法差不多,但你可以做以下几点:

data() {
  return {
      combined: {
          a: false, 
          b: false, 
      }
  }
},

然后:

watch: {
    combined:{
        deep:true,
        handler
    }
}

相关问题