<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>选项</title>
<script src="js/vue.min.js"></script>
</head>
<body>
<h1>选项</h1>
<hr/>
<div id="app">
<p>原价:¥{{prevPrice}}</p>
<p>折扣:{{sale}}</p>
<p>现价:{{newPrice}}</p>
<button @click="plus">+</button>
<button @click="min">-</button>
</div>
</body>
<script>
var vm = new Vue({
el: '#app',
data: {
prevPrice: 10,
sale: 0.8
},
//计算
computed: {
newPrice: function(){
return '¥' + this.prevPrice*this.sale;
}
},
//方法
methods: {
plus: function(){
this.prevPrice++;
},
min: function(){
this.prevPrice--;
}
},
//监控第一种方式
/* watch: {
//newVal修改之后的值 old修改之前的值
prevPrice: function(newVal,old){
if(newVal < 1){
this.prevPrice=1;
}
}
}*/
})
//监控第二种方式
vm.$watch("prevPrice",function(newVal,old){
if(newVal < 1){
this.prevPrice = 1;
}
})
</script>
</html>
运行效果图: