vue实现计步器功能

本文实例为大家分享了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实现计步器功能 的全部内容, 来源链接: utcz.com/z/361057.html

回到顶部