<div id="app">
  {{a}}
  {{b}}
  <button @click="add">add</button>
</div>
var vm = new Vue({
  el: '#app',
  data: {
    a: 1,
    b: 1
  },
  methods: {
    add() {
      this.a += 1;
    }    
  }
});

vm.$data.a = 2; // equal to vm.a = 2
vm.$watch('a', function (newValue, oldValue) {
  this.b = oldValue;
});

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

  1. https://cdnjs.cloudflare.com/ajax/libs/vue/2.6.11/vue.min.js