@tplc/wot
Version:
161 lines (160 loc) • 3.17 kB
TypeScript
import type { ExtractPropTypes, PropType } from 'vue'
/**
* 输入框值变化前的回调函数类型定义
* @param value 输入框的新值
* @returns 返回布尔值或Promise<boolean>,用于控制是否允许值的变化
*/
export type InputNumberBeforeChange = (value: number | string) => boolean | Promise<boolean>
export type OperationType = 'add' | 'sub'
export declare const inputNumberProps: {
/**
* 绑定值
*/
modelValue: {
type: (NumberConstructor | StringConstructor)[]
required: true
}
/**
* 最小值
*/
min: {
type: NumberConstructor
default: number
}
/**
* 最大值
*/
max: {
type: NumberConstructor
default: number
}
/**
* 步进值
*/
step: {
type: NumberConstructor
default: number
}
/**
* 是否严格按照步进值递增或递减
*/
stepStrictly: {
type: BooleanConstructor
default: boolean
}
/**
* 数值精度
*/
precision: {
type: (NumberConstructor | StringConstructor)[]
default: number
}
/**
* 是否禁用
*/
disabled: {
type: BooleanConstructor
default: boolean
}
/**
* 是否禁用输入框
*/
disableInput: {
type: BooleanConstructor
default: boolean
}
/**
* 是否禁用减号按钮
*/
disableMinus: {
type: BooleanConstructor
default: boolean
}
/**
* 是否禁用加号按钮
*/
disablePlus: {
type: BooleanConstructor
default: boolean
}
/**
* 是否不显示输入框
*/
withoutInput: {
type: BooleanConstructor
default: boolean
}
/**
* 输入框宽度
*/
inputWidth: {
type: (NumberConstructor | StringConstructor)[]
default: number
}
/**
* 是否允许为空
*/
allowNull: {
type: BooleanConstructor
default: boolean
}
/**
* 输入框占位符
*/
placeholder: {
type: PropType<string>
default: string
}
/**
* 原生属性,键盘弹起时,是否自动上推页面
*/
adjustPosition: {
type: BooleanConstructor
default: boolean
}
/**
* 输入值变化前的回调函数,返回 `false` 可阻止输入,支持返回 `Promise`
*/
beforeChange: PropType<InputNumberBeforeChange>
/**
* 是否开启长按加减手势
*/
longPress: {
type: BooleanConstructor
default: boolean
}
/**
* 是否立即响应输入变化,false 时仅在失焦和按钮点击时更新
*/
immediateChange: {
type: BooleanConstructor
default: boolean
}
/**
* 是否在初始化时更新 v-model 为修正后的值
* true: 自动修正并更新 v-model
* false: 保持原始值不修正,但仍会进行显示格式化
*/
updateOnInit: {
type: BooleanConstructor
default: boolean
}
/**
* 输入框类型
* number: 数字输入
* digit: 整数输入
*/
inputType: {
type: PropType<'number' | 'digit'>
default: 'number' | 'digit'
}
customStyle: {
type: PropType<string>
default: string
}
customClass: {
type: PropType<string>
default: string
}
}
export type InputNumberProps = ExtractPropTypes<typeof inputNumberProps>