Vue 通过 watch 来响应数据的变化。当需要在数据变化时执行异步或开销较大的操作时,这个方式是最有用的。
<div id="app"> <p>计数器: {{ num }}</p> <button click="num++">点我</button></div> <script> var vm = new Vue({ el: '#app', data: { num: 1 }, watch:{ 'num': function(nval, oval) { console.log('num变化 :' + oval + ' 变为 ' + nval + '!'); }, } }) </script>
每次点击按钮都会输出:
num变化 :1变为2!
num变化 :2变为3!
...