title: can't access data variables in watch handler vuejs
body: <p>I'm trying to set a data variable in a watch handler function for an input field in a VueJs Component. I have something like this:</p>
  
  <pre><code>data() {
      return {
          params: {
              // default params to 1 month
              from: new Date().setMonth(new Date().getMonth() - 1),
              to: Date.now(),
              skip: 0,
              limit: 100
          }
      }
  }
  watch: {
      dates: { 
          handler: date =&gt; {
              console.log(this.params)
              if (date.start) {
                  this.params.from = moment(date.start, "YYYY/MM/DD")
              }
              if (date.end) {
                  this.params.to = moment(date.end, "YYYY/MM/DD")
              }
          },
          deep: true
      }
  }
  </code></pre>
  
  <p>When I set an input for the <code>dates</code> variable in the view template, I get an <code>undefined</code> for <code>this.params</code> in the console log, and I get an error for trying to set <code>this.params.from</code>. So I tried accessing it using a method:</p>
  
  <pre><code>methods: {
      printParams() {
          console.log(this.params)
      }
  }
  </code></pre>
  
  <p>calling it in the view template, it correctly resolves the <code>params</code> object.</p>
  
  <p>Am I missing something here?</p>