Skip to content

Stepper 步进器

介绍

步进器由增加按钮、减少按钮和输入框组成,用于在一定范围内输入、调整数字。

引入

ts
import { IBestStepper } from "@ibestservices/ibest-ui";

代码演示

基础用法

基础用法

点我查看代码
ts
@Entry
@Component
struct DemoPage {
  @State value: number = 1
  build() {
    IBestStepper({
      value: $value
    })
  }
}

步长设置

步长设置

TIP

通过 step 属性设置每次点击增加或减少按钮时变化的值,默认为 1

点我查看代码
ts
@Entry
@Component
struct DemoPage {
  @State value: number = 1
  build() {
    IBestStepper({
      value: $value,
      step: 2
    })
  }
}

限制输入范围

限制输入范围

TIP

通过 minmax 属性限制输入值的范围,默认超出范围后会自动校正最大值或最小值,通过 autoFixed 可以关闭自动校正。

点我查看代码
ts
@Entry
@Component
struct DemoPage {
  @State value: number = 1
  build() {
    IBestStepper({
      value: $value,
      min: 5,
      max: 8
    })
  }
}

限制输入整数

限制输入整数

TIP

设置 integer 属性后,输入框将限制只能输入整数。

点我查看代码
ts
@Entry
@Component
struct DemoPage {
  @State value: number = 1
  build() {
    IBestStepper({
      value: $value,
      integer: true
    })
  }
}

禁用状态

禁用状态

TIP

通过设置 disabled 属性来禁用步进器,禁用状态下无法点击按钮或修改输入框。

点我查看代码
ts
@Entry
@Component
struct DemoPage {
  @State value: number = 1
  build() {
    IBestStepper({
      value: $value,
      disabled: true
    })
  }
}

禁用输入框

禁用输入框

TIP

通过设置 disableInput 属性来禁用输入框,此时按钮仍然可以点击。

点我查看代码
ts
@Entry
@Component
struct DemoPage {
  @State value: number = 1
  build() {
    IBestStepper({
      value: $value,
      disableInput: true
    })
  }
}

固定小数位数

固定小数位数

TIP

通过设置 decimalLength 属性可以保留固定的小数位数。

点我查看代码
ts
@Entry
@Component
struct DemoPage {
  @State value: number = 1
  build() {
    IBestStepper({
      value: $value,
      step: 0.2,
      decimalLength: 1
    })
  }
}

自定义大小

自定义大小

TIP

通过 inputWidth 属性设置输入框宽度,通过 buttonSize 属性设置按钮大小和输入框高度。

点我查看代码
ts
@Entry
@Component
struct DemoPage {
  @State value: number = 1
  build() {
    IBestStepper({
      value: $value,
      inputWidth: 40,
      buttonSize: 32
    })
  }
}

API

@Props

参数说明类型默认值
value绑定值, 支持双向绑定number-
min最小值string | number1
max最大值string | numberInfinity
autoFixed是否自动校正超出限制范围的数值booleantrue
step步长,每次点击时改变的值number | string1
inputWidth输入框宽度number | string32
buttonSize按钮大小以及输入框高度number | string27
decimalLength固定显示的小数位数number | string0
integer是否只允许输入整数booleanfalse
disabled是否禁用步进器booleanfalse
disablePlus是否禁用增加按booleanfalse
disableMinus是否禁用减少按钮booleanfalse
disableInput是否禁用输入框booleanfalse
showPlus是否显示增加按钮booleantrue
showMinus是否显示减少按钮booleantrue
showInput是否显示输入框booleantrue
longPress是否开启长按手势,开启后可以长按增加和减少按钮booleantrue
validateTime多少毫秒触发自动校验修正,为 0 时不修正,单位 msnumber1000
iconSize输入框中图标的宽度number | string20
buttonRadius按钮的圆角number | string2

Events

事件名说明参数类型
onChange当值变化时触发的事件val: number
onPlus点击增加按钮时触发-
onMinus点击较少按钮时触发-