Elements

组件

验证码输入 Pin Input

PinInput:验证码输入。每个字符占用一个方形格位,字符居中,数字等宽。部件:Root、Label、Control、Input、HiddenInput。

#基础用法

pin-input/basic Vue React

#属性

#Control

纯造型的部件——自身没有属性,沿用部件结构的共享样式。

#HiddenInput

纯造型的部件——自身没有属性,沿用部件结构的共享样式。

#Input

属性类型默认值描述
indexnumber—

#Label

纯造型的部件——自身没有属性,沿用部件结构的共享样式。

#Root

属性类型默认值描述
sizeString as PropType<"sm" | "md" | "lg">"md"每个输入格使用的控件高度档位
autoFocusboolean是否自动聚焦第一个输入框
autoSubmitboolean全部输入格填满后是否自动提交所属表单
blurOnCompleteboolean值输入完成后是否让输入框失焦
countnumber渲染的输入格数量,用于生成 SSR ARIA 属性;下一个大版本中将必填
defaultValuestring[]PIN 输入框的初始值;适合不需要受控值的场景
disabledboolean是否禁用各个输入框
formstring底层 input 元素关联的表单
idstring组件内部状态机的唯一标识
idsPartial<{ root: string; hiddenInput: string; label: string; control: string; input(id: string): string; }>PIN 输入框各元素的 id,便于组合使用
invalidbooleanPIN 输入框是否无效
maskboolean为 true 时,按 type=password 的方式隐藏输入值
modelValuestring[]验证码输入框的 v-model 值
namestring输入元素的 name 属性,用于表单提交
otpboolean为 true 时,PIN 输入组件让各字段使用 autocomplete="one-time-code"
patternstring校验用户输入值的正则表达式
placeholderstring"○"输入框的占位文本
readOnlybooleanPIN 输入框是否处于有效状态
requiredbooleanPIN 输入框是否必填
sanitizeValue(value: string) => string校验前清理粘贴值的函数,可去除连字符、空格或其他格式字符
selectOnFocusboolean输入框聚焦时是否选中输入值
translationspinInput.IntlTranslations无障碍元素及其状态的本地化文案
type'alphanumeric' | 'numeric' | 'alphabetic'"numeric"验证码输入框允许的值类型