表单组件版本 0.1.0

OTPInput 验证码输入

按固定长度分格录入一次性验证码,并支持连续输入与粘贴。

使用概览

适合使用

  • 短信、邮箱或验证器提供固定长度的短验证码时。

不建议使用

  • 输入是长期密码、恢复码或长度不固定的普通文本时。

真实示例

六位验证码输入

用六个连续输入格收集一次性验证码。

正在加载示例…

安装

本地候选警告Registry 地址仅指向当前本地文档站;npm 包也只用于本地候选验证,尚未公开发布。
pnpm dlx shadcn@4.16.0 add http://127.0.0.1:3000/r/otp-input.json

基础用法

导入

import { OTPInput } from "@richardqiu/quartz/otp-input";

JSX

<OTPInput aria-label="六位验证码" length={6} name="verificationCode" />

状态与控制摘要

默认
键盘焦点可见
已禁用
无效
label · textactive · boolean

API 参考

属性类型默认值说明
lengthnumber必填设置验证码字符数与对应输入格数量。

组合结构

  1. 01OTPInput

键盘约定

  • 方向键移动单元格,Backspace 向前清除;粘贴与自动填充分配完整数字码。

可访问性契约

  • 所有单元格共享具名分组并暴露当前位置。
  • 单个隐藏值参与原生表单提交。