Skip to content
12:13

TnNumberBox-步进器

该组件一般用于商城购物选择物品数量、购物车数量控制的场景

警告

该输入框只能输入大于或等于 0 的数值

组件位置

typescript
import TnNumberBox from '@tuniao/tnui-vue3-uniapp/components/number-box/src/number-box.vue'
import TnNumberBox from '@tuniao/tnui-vue3-uniapp/components/number-box/src/number-box.vue'
typescript
import TnNumberBox from '@/uni_modules/tuniaoui-vue3/components/number-box/src/number-box.vue'
import TnNumberBox from '@/uni_modules/tuniaoui-vue3/components/number-box/src/number-box.vue'

平台差异说明

App(vue)H5微信小程序支付宝小程序...
适配中

基本使用

  • 通过v-model绑定步进器的值
  • 通过disabled禁止步进器的使用
  • 通过input-disabled禁止步进器输入数值,仅可以通过加减按钮进行操作
vue
<script lang="ts" setup>
import { ref } from 'vue'
const numberValue = ref<number>(0)
</script>

<template>
  <TnNumberBox v-model="numberValue" />
  <!-- 禁止操作 -->
  <TnNumberBox v-model="numberValue" disabled />
  <!-- 禁止输入框输入 -->
  <TnNumberBox v-model="numberValue" input-disabled />
</template>
<script lang="ts" setup>
import { ref } from 'vue'
const numberValue = ref<number>(0)
</script>

<template>
  <TnNumberBox v-model="numberValue" />
  <!-- 禁止操作 -->
  <TnNumberBox v-model="numberValue" disabled />
  <!-- 禁止输入框输入 -->
  <TnNumberBox v-model="numberValue" input-disabled />
</template>

修改步进器的样式

  • 通过size修改步进器的尺寸,可选值smlg
  • 通过bg-colortext-color的值修改步进器的背景颜色和字体颜色,可以传递hexrgbrgba和图鸟内置颜色的值背景颜色 \ 字体颜色
  • 通过widthheight修改组件的宽高,默认单位为 rpx,可以传递带单位的字符串
  • 通过font-size修改字体大小,默认单位为 rpx,可以传递带单位的字符串
vue
<script lang="ts" setup>
import { ref } from 'vue'
const numberValue = ref<number>(0)
</script>

<template>
  <!-- 使用内置尺寸 -->
  <TnNumberBox v-model="numberValue" />
  <!-- 自定义尺寸 -->
  <TnNumberBox v-model="numberValue" width="300" height="80" font-size="40" />
  <!-- 自定义组件颜色 -->
  <TnNumberBox
    v-model="numberValue"
    bg-color="tn-grey-light"
    text-color="#01BEFF"
  />
</template>
<script lang="ts" setup>
import { ref } from 'vue'
const numberValue = ref<number>(0)
</script>

<template>
  <!-- 使用内置尺寸 -->
  <TnNumberBox v-model="numberValue" />
  <!-- 自定义尺寸 -->
  <TnNumberBox v-model="numberValue" width="300" height="80" font-size="40" />
  <!-- 自定义组件颜色 -->
  <TnNumberBox
    v-model="numberValue"
    bg-color="tn-grey-light"
    text-color="#01BEFF"
  />
</template>

修改步进器的步进值、最小、最大值

  • 通过step可以设置步进器的步进值,默认值为 1
  • 通过maxmin设置步进器的最大、最小值,默认值为 [0 ~ 100]
vue
<script lang="ts" setup>
import { ref } from 'vue'
const numberValue = ref<number>(0)
</script>

<template>
  <!-- 设置步进值为0.1,最小值为10,最大值为20 -->
  <TnNumberBox v-model="numberValue" :step="0.1" :min="10" :max="20" />
</template>
<script lang="ts" setup>
import { ref } from 'vue'
const numberValue = ref<number>(0)
</script>

<template>
  <!-- 设置步进值为0.1,最小值为10,最大值为20 -->
  <TnNumberBox v-model="numberValue" :step="0.1" :min="10" :max="20" />
</template>

API

Props

属性名说明类型默认值可选值
model-value/v-model步进器绑定的值Number-
size步进器的尺寸String-sm / lg
width步进器宽度,默认单位为 rpx,可以传入带单位的尺寸值String | Number--
height步进器高度,默认单位为 rpx,可以传入带单位的尺寸值String | Number--
font-size步进器字体大小,默认单位为 rpx,可以传入带单位的尺寸值String | Number--
bg-color步进器背景颜色,可以使用图鸟内置的背景色、hex、rgb、rgbaString--
text-color步进器字体颜色,可以使用图鸟内置的背景色、hex、rgb、rgbaString--
min步进器最小值Number0-
max步进器最大值Number100-
step步进器步进值Number1-
disabled禁止操作步进器Booleanfalsetrue
input-disabled禁止步进器输入Booleanfalsetrue
input-spacing输入框与键盘的间距,单位pxNumber20-
long-press长按递增减Booleantruefalse
long-press-interval长按递增减的间隔时间,单位msNumber250-
validate-event值发生修改时是否触发表单验证Booleantruefalse

Events

事件名说明类型
change步进值发生变化时的回调函数(value: number) => void
input步进值输入的值发生变化时的回调函数(value: number) => void

Slots

插槽名说明
minus步进器减按钮的内容
plus步进器加按钮的内容

Tuniao UI