案例-计数器

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>计数器</title>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<style type="text/css">
#app{
text-align: center;
margin: 0 auto;
line-height: 500px;
}
#app input{
width: 50px;
height: 40px;
font-size: 20px;
border-radius: 5px;
outline: none;
border: 1px solid transparent;
background-color: blue;
line-height: 30px;
color: white;
}
#app span{
padding: 20px 20px;
border: 1px;
}
</style>
</head>
<body>
<div id="app">
<input type="button" value="-" @click="sub"/>
<span>{{num}}</span>
<input type="button" value="+" @click="add"/>
</div>
<script>
var app = new Vue({
el: "#app",
data: {
num: 1
},
methods:{
add: function(){
if(this.num<10){
this.num++;
}else{
alert("达到最大啦!");
}
},
sub: function(){
if(this.num>0){
this.num--;
}else{
alert("已经没有了!");
}
}
}
})
</script>
</body>
</html>
data
中写需要用到的数据:num
-methods
中添加两个方法:加(add)
、减(sub)
- 使用
v-text
或者差值表达式将num
设置给span
标签 - 使用
v-on
:(简写,@
)将add
、sub
分别绑定给+
、-
按钮 - 累加的逻辑:小于10累加,否则提示
- 递减的逻辑:大于0递渐,否则提示
- 方法中通过
this
关键字获取data
中的数据