正确使用Vue Watch

时间:2018-02-22 20:05:42

标签: javascript events vue.js event-handling

我想仅在某个data值等于true时触发方法。在搜索了文档之后,我决定使用Watch选项,但我只想检查true值:

  export default {
    data () {
        return {
            staticMode: true,
        }
      },
      methods: {
        checkStatic: function() { 
           ...
           console.log('static mode is on')
        }
      },
      watch: {
        staticMode: function () {
          if(this == true) {
            checkStatic()
        }
      }

watch方法id永远不会被触发,因为控制台中没有记录任何内容。我确定语法已关闭......有什么建议吗?

1 个答案:

答案 0 :(得分:0)

监视变量的新值传递给函数,如下所示:

export default {
    data () {
        return {
            staticMode: true,
        }
      },
      methods: {
        checkStatic: function() { 
           ...
           console.log('static mode is on')
        }
      },
      watch: {
        staticMode: function (value) {
          if(value === true) {
            console.log(true)
            this.checkStatic()
        }
      }
}