Stepper

Install

import { Stepper } from 'vant';

Vue.use(Stepper);

Usage

Basic Usage

<van-stepper v-model="value" />
export default {
  data() {
    return {
      value: 1
    }
  }
}

Step

<van-stepper v-model="value" step="2" />

Range

<van-stepper v-model="value" min="5" max="8" />

Integer

<van-stepper v-model="value" integer />

Disabled

<van-stepper v-model="value" disabled />

Async Change

<van-stepper
  :value="value"
  async-change
  @change="onChange"
/>
export default {
  data() {
    return {
      value: 1
    }
  },

  methods: {
    onChange(value) {
      Toast.loading({ forbidClick: true });

      setTimeout(() => {
        Toast.clear();
        this.value = value;
      }, 500);
    }
  }
}

Custom Size

<van-stepper
  v-model="value"
  input-width="40px"
  button-size="32px"
/>

API

Props

Attribute Description Type Default
v-model Current value `string number`
min Min value `string number`
max Max value `string number`
step Value change step `string number`
integer Whether to allow only integers boolean false
disabled Disable value change boolean false
disable-input Disable input boolean false
async-change Whether to enable async change boolean false
input-width Input width `string number`
button-size Button size `string number`

Events

Event Description Arguments
change Triggered when value change value: current value
overlimit Triggered when click disabled button -
plus Triggered when click plus button -
minus Triggered when click minus button -
focus Triggered when input focused -
blur Triggered when input blured -