Vant Stepper 步進器

2022-05-31 11:59 更新

介紹

步進器由增加按鈕、減少按鈕和輸入框組成,用于在一定范圍內輸入、調整數(shù)字

引入

import Vue from 'vue';
import { Stepper } from 'vant';

Vue.use(Stepper);

代碼演示

基礎用法

通過v-model綁定輸入值,可以通過change事件監(jiān)聽到輸入值的變化

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

步長設置

通過step屬性設置每次點擊增加或減少按鈕時變化的值,默認為1

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

限制輸入范圍

通過min和max屬性限制輸入值的范圍

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

限制輸入整數(shù)

設置integer屬性后,輸入框將限制只能輸入整數(shù)

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

禁用狀態(tài)

通過設置disabled屬性來禁用步進器,禁用狀態(tài)下無法點擊按鈕或修改輸入框

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

禁用輸入框

通過設置disabled-input屬性來禁用輸入框,此時按鈕仍然可以點擊

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

固定小數(shù)位數(shù)

通過設置decimal-length屬性可以保留固定的小數(shù)位數(shù)

<van-stepper v-model="value" step="0.2" :decimal-length="1" />

自定義大小

通過input-width屬性設置輸入框寬度,通過button-size屬性設置按鈕大小和輸入框高度

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

異步變更

如果需要異步地修改輸入框的值,可以設置async-change屬性,并在change事件中手動修改value

<van-stepper
  :value="value"
  async-change
  @change="onChange"
/>
import { Toast } from 'vant';

export default {
  data() {
    return {
      value: 1
    }
  },
  methods: {
    onChange(value) {
      Toast.loading({ forbidClick: true });

      setTimeout(() => {
        Toast.clear();

        // 注意此時修改 value 后會再次觸發(fā) change 事件
        this.value = value;
      }, 500);
    }
  }
}

API

Props

參數(shù)說明類型默認值
v-model當前輸入值number | string-
min最小值number | string1
max最大值number | string-
default-value初始值,當 v-model 為空時生效number | string1
step步長,每次點擊時改變的值number | string1
name v2.2.11標識符,可以在change事件回調參數(shù)中獲取number | string-
input-width輸入框寬度,默認單位為pxnumber | string32px
button-size v2.0.5按鈕大小以及輸入框高度,默認單位為pxnumber | string28px
decimal-length v2.2.1固定顯示的小數(shù)位數(shù)number | string-
integer是否只允許輸入整數(shù)booleanfalse
disabled是否禁用步進器booleanfalse
disable-plus v2.2.16是否禁用增加按鈕booleanfalse
disable-minus v2.2.16是否禁用減少按鈕booleanfalse
disable-input是否禁用輸入框booleanfalse
async-change是否開啟異步變更,開啟后需要手動控制輸入值booleanfalse
show-plus v2.1.2是否顯示增加按鈕booleantrue
show-minus v2.1.2是否顯示減少按鈕booleantrue
long-press v2.4.3是否開啟長按手勢booleantrue

Events

事件名說明回調參數(shù)
change當綁定值變化時觸發(fā)的事件value: 當前組件的值, detail: 額外信息,包含 name 的字段
overlimit點擊不可用的按鈕時觸發(fā)-
plus點擊增加按鈕時觸發(fā)-
minus點擊減少按鈕時觸發(fā)-
focus輸入框聚焦時觸發(fā)event: Event
blur輸入框失焦時觸發(fā)event: Event


實例演示

以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號