1.計算屬性是用來存儲數據,但具有以下幾個特點:
a.數據可以進行邏輯處理操作。
b.對計算屬性中的數據進行監視。
2.計算屬性和普通屬性的區別:
a.計算屬性是基於它的依賴進行更新的,只有在相關依賴發生改變時才能更新變化
b.計算屬性是緩存的,只要相關依賴沒有改變,多次訪問計算屬性得到的值是之前緩存計算的結果,不會多次執行。
3.get和set
計算屬性由兩部分組成,get和set,分別用來獲取計算屬性和設置計算屬性。
默認只有get,如果需要set,要自己添加
<script type="text/javascript">
window.onload=function(){
let vm = new Vue({
el:"#app",
data:{
num:8
},
computed:{
num1:{
get:function(){//必須有返回值,用來獲取屬性,稱為get函數
return this.num-1;
},
set:function(val){
console.log('修改num1的值');
this.num = 11;
}
}
},
methods:{
changeNum1:function(){
this.num1 = 11;
}
}
})
}
</script>
html:
<div id="app">
<p>{{ num }}</p>
<p>{{ num1 }}</p>
<button @click='changeNum1'>點擊改變num1的值</button>
</div>
