今天说说这个vue中的计算属性与侦听属性,通过简单的总结呢,可以在项目中能够更好的掌握代码,不至于一行代码看半天,哈哈哈。下面就开始了。
一、计算属性:computed:当一个值受多个值影响的时候就用计算属性
计算价格的实例
<template>
<div>
<p>单价:{{price}}</p>
<p>
<button @click="sub"> - </button>
数量:{{quality}}
<button @click="add"> + </button>
</p>
<p>折扣:{{discount}}</p>
<p>总价:{{total}}</p>
</div>
</template>
<script>
export default {
data(){
return {
price:1,
quality:0,
discount:0.5,
}
},
computed:{
total(){
return this.price * this.quality * this.discount
}
},
methods:{
add(){
this.quality++;
},
sub(){
this.quality--
}
}
}
</script>
二、侦听器:watch:当一个值影响多个值的时候就用侦听属性
<template>
<div>
<p>单价:{{price}}</p>
<p>
<button @click = "sub" > - </button>
数量:{{quality}}
<button @click= "add"> + </button>
</p>
<p>折扣:{{discount}}</p>
<p>总价:{{total}}</p>
</div>
</template>
<script>
export default {
data(){
return {
price:1,
quality:0,
discount:0.5
}
},
watch:{
//监听数量的变化来实现对总价的变化
quality(val){ //val参数就是变化后的参数
return this.total = this.price * val * this.discount
}
},
methods:{
add(){
this.quality++;
},
sub(){
this.quality--
}
}
}
</script>