vue裡computed的get和set
阿新 • • 發佈:2018-12-22
computed裡的物件有get和set方法。
get是當該物件所依賴的變數發生變化是執行,重新returncomputed結果。
set是該物件的值變化時會執行,並且將變化的結果作為引數傳進set裡。然後可以根據傳進的值來處理
<div id="app"> <p>price: <input type="text" v-model='price'>{{price}}</p> <p>mount: <input type="text" v-model='mount'></p> <p>toltal: {{calculate}} </p> <button v-on:click='change'>changePrice</button>//當改變了calculate的值得時候,會執行calculate的set方法,且傳入引數</div> <script src="vue.js"></script> <script> var vm = new Vue({ el: "#app", data: { price: 0, mount: 0, }, methods:{ change:function(){ this.calculate = 100; } }, computed:{ calculate:{//這個calculate不能是函式而是物件了。 get:function(){ alert('get執行了')//頁面渲染時會執行一次get來獲取calculate的值 return this.price * this.mount }, set:function(value){ alert('set執行了'); this.price = 10; this.mount = 10 } } } })