这篇文章将为大家详细讲解有关vue实现计步器功能的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
1.首先先创建一个Stepper.vue
<template>
<div class="counter-component">
<div class="counter-btn" @click="mins" :class="{ active: muber==min }">-</div>
<input type="text" v-model="muber" @keyup="keyUpnumberVal" />
<div class="counter-btn" @click="adds" :class="{ active: muber==max }">+</div>
</div>
</template>
<script>
export default {
name: "Stepper",
data() {
return {
muber: 1
};
},
props: {
min: {
type: Number,
default: 1
},
max: {
type: Number,
default: 5
},
disabled,
},
methods: {
mins() {
if (this.muber <= this.min) {
return;
}
this.muber--;
this.$emit("countNumber", this.muber);
},
adds() {
if (this.muber >= this.max) {
return;
}
this.muber++;
this.$emit("countNumber", this.muber);
},
keyUpnumberVal() {
let numValue;
if (typeof this.muber === "string") {
}
this.$emit("countNumber", this.muber);
}
}
};
</script>
<style lang="less" scoped>
.counter-component {
position: relative;
display: inline-table;
overflow: hidden;
vertical-align: middle;
}
.counter-show {
float: left;
}
input {
display: inline-block;
border: none;
border-top: 1px solid #e3e3e3;
border-bottom: 1px solid #e3e3e3;
height: 25px;
line-height: 25px;
width: 30px;
text-align: center;
outline: none;
text-align: center;
background: #fff;
}
.counter-btn {
border: 1px solid #e3e3e3;
display: inline-block;
height: 25px;
line-height: 25px;
width: 25px;
text-align: center;
cursor: pointer;
}
.counter-btn:hover {
border-color: #4fc08d;
background: #4fc08d;
color: #fff;
}
.active {
background: rgb(182, 181, 181);
}
</style>
2.然后页面加载
import Stepper from "./Stepper/Stepper";
<Stepper :min="Numbers" :max="maxNumbers" @countNumber="getFeslaves('countNumber',$event)"></Stepper>
data(){
return {
Numbers: 1,
maxNumbers: 5
}
}
关于“vue实现计步器功能的方法”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。