Skip to content
On this page

组件库文档 tmui.design

步进器 Stepper

Stepper 步进器是应用在数值较少且变动较精确的数值输入场景的组件


🌶️ 步进器 Stepper 示例

查看模拟效果
示例模板
vue
<template>
	<tm-app>
		<tm-sheet>
			<tm-text :font-size="24" _class="font-weight-b" label="基础示例,更多见文档"></tm-text>
			<tm-divider></tm-divider>
			<tm-stepper v-model="test.a" :defaultValue="20"></tm-stepper>
		</tm-sheet>
		<tm-sheet>
			<tm-text :font-size="24" _class="font-weight-b" label="一些其它常见属性"></tm-text>
			<tm-divider></tm-divider>
			<tm-stepper v-model="val"  color="primary" bgColor="primary" circular :defaultValue="20"></tm-stepper>
		</tm-sheet>
		<tm-sheet>
			<tm-text :font-size="24" _class="font-weight-b" label="步幅3"></tm-text>
			<tm-divider></tm-divider>
			<tm-stepper  color="red" bgColor="red" :step="3" circular :defaultValue="0"></tm-stepper>
			<tm-text _class="pt-24 font-weight-b" :font-size="24" label="小数点"></tm-text>
			<tm-divider></tm-divider>
			<tm-stepper :round="0" bgColor="green" color="green" :fixed="1"  :defaultValue="0.3"></tm-stepper>
			<tm-text _class="pt-24 font-weight-b" :font-size="24" label="最大值10,最小值-3"></tm-text>
			<tm-divider></tm-divider>
			<tm-stepper :max="10" :min="-3"  :defaultValue="1"></tm-stepper>
		</tm-sheet>
		<tm-sheet>
			<tm-text :font-size="24" _class="font-weight-b" label="异步增减,尺寸的改变"></tm-text>
			<tm-divider></tm-divider>
			<tm-stepper :width="200" :height="62" :beforeEnter="beforeEnter" color="red" linear="bottom" bgColor="red" circular :defaultValue="20"></tm-stepper>
		</tm-sheet>
	</tm-app>
</template>
<script lang="ts" setup>
import { ref, reactive } from "vue"
import { onShow, onLoad } from "@dcloudio/uni-app";
import tmApp from "@/tmui/components/tm-app/tm-app.vue"
import tmSheet from "@/tmui/components/tm-sheet/tm-sheet.vue"
import tmText from "@/tmui/components/tm-text/tm-text.vue"
import tmStepper from "@/tmui/components/tm-stepper/tm-stepper.vue"
import tmDivider from "@/tmui/components/tm-divider/tm-divider.vue"
const val=ref(0)
const test = reactive({a:1})
setTimeout(()=>{
	test.a = 100
},1000)
function beforeEnter(){
	return new Promise(res=>{
		setTimeout(function() {
			res(true)
		}, 1000);
	})
}


</script>

🌶️ 兼容性

APP-VUEAPP-NVUE小程序WEB/H5VUE3/TS
✔️✔️✔️✔️✔️

🌱 参数

本组件含有公共属性 公共属性

:::tips 温馨提示

+,-按钮,长按时可以持续增减。

:::

参数名类型默认值描述
widthNumber210组件宽度
heightNumber52组件高度
disabledBooleanfalse是否禁用
disabledInputBooleanfalse是否禁用输入
stepNumber1步幅长度
fixedNumber0固定小数点位数,0表示整数
colorStringgrey-4按钮主题色
bgColorStringgrey-4输入框背景色
linearString/选择器确认选择按钮的渐变背景方向,可选值有:left:右->左,right:左->右。top:下->上,bottom:上->下
linearDeepStringlight选择器确认选择按钮的渐变背景颜色深浅,可选值有:light,dark,accent亮系渐变和深色渐变
roundString / Number2步进器圆角值
fontSizeString / Number28字体字号大小
circularBooleanfalse步进器按钮是否为圆形
maxNumber999可输入的最大数值
minNumber0可输入的最小数值
modelValue / v-modelNumbernull步进器双向绑定值
defaultValueNumbernull步进器默认值
beforeEnterFunction / Booleantrue返回参数(ty='+' / '-'):+表示增加按钮点击,-:表示减少按钮点击按钮增加或者减少前执行的勾子函数,返回 fase取消当前操作,可以是Promise<boolean>

🌹 事件

事件名参数返回数据描述
change/modelValue步进器内容修改后返回当前数值

🌽 slot插槽

🥗 ref方法

😡 贡献者

Wicos