vue.js @click 與屬性 $watch 的結合使用
阿新 • • 發佈:2018-11-11
Vue.js 監聽屬性 watch,我們可以通過 watch 來響應資料的變化。
以下例項通過使用 watch 實現計數器:
<body>
<div id = "app">
<p style = "font-size:25px;">計數器: {{ counter }}</p>
<button @click = "counter++" style = "font-size:25px;">點我</button>
</div>
<script type = "text/javascript">
var vm = new Vue({
el: '#app',
data: {
counter: 1
}
});
vm.$watch('counter', function(nval, oval) {
alert('計數器值的變化 :' + oval + ' 變為 ' + nval + '!');
});
</script>
-----------也可以改成-------------------
<div id = "app"> <p style = "font-size:25px;">計數器: {{ counter }}</p> <!-- <button @click = "counter++" style = "font-size:25px;">點我</button>--> <button @click = "countClick" style = "font-size:25px;">點我</button></div> </body> </html> <script type = "text/javascript"> var vm = new Vue({ el: '#app', data: { counter: 1 }, methods:{ countClick: function(){ return this.counter ++; } } }); vm.$watch('counter', function(nval, oval) { alert('計數器值的變化 :' + oval + ' 變為 ' + nval + '!'); }); </script>