项目正在快速迭代中,API 与视觉细节可能随版本调整,请勿用于生产环境。
仅桌面端保证样式

OtpInput 验证码输入框 ​

方框式验证码输入(OTP):逐位输入自动前进、退格自动回退、粘贴整段验证码自动分配到各位;接入 Form 表单契约,type=number 时移动端唤起数字键盘且首框启用 one-time-code 自动填充。

基础用法 ​

输入满 length 位时触发 complete,携带完整验证码;下方以 @complete 展示真实结果。

输入结果:—

粘贴与键盘 ​

在任意方框上粘贴整段验证码(如短信里的 836274),会从该位起逐位分配并自动聚焦末位;方向键在方框间移动,空框上退格回退并清除前一位。

复制一段 4 位验证码,在任意方框上粘贴试试:—

掩码与错误态 ​

masked 将已填位显示为 ●;status 设为 error 进入红色边框错误态(Form 校验失败场景)。

表单校验 ​

与 EbForm 联动:prop 挂接校验规则,change 时机触发校验,失败自动进错误态。

API ​

OtpInput Props

参数说明类型默认值
modelValue当前值(v-model),各框字符按序拼接string
length方框数量(1~10)number6
typenumber 只收数字并启用 one-time-code;text 收字母数字number | textnumber
masked掩码显示(已填位显示为圆点)booleanfalse
size尺寸small | default | largedefault
disabled禁用(Form 内可继承)booleanfalse
status校验状态,error 为红色错误态string
autofocus挂载后自动聚焦首个方框booleanfalse

Events

参数说明类型默认值
update:modelValue值变化(value: string) => void—
change值变化(value: string) => void—
complete全部方框填满(value: string) => void—

Methods

参数说明类型默认值
focus聚焦指定方框(缺省首个)(index?) => void—
blur失焦() => void—
clear清空全部方框() => void—