Components
- 手风琴
- 提示
- 警告对话框
- 宽高比
- 头像
- 徽章
- 面包屑导航
- 按钮
- 按钮组
- 日历 Calendar
- 卡片
- Carousel
- 图表 Chart
- 复选框
- 折叠面板
- 组合框
- 命令
- 上下文菜单
- 数据表格 Data Table
- 日期选择器 Date Picker
- 对话框 Dialog
- 抽屉
- 下拉菜单
- Empty
- 字段
- 悬停卡片
- 输入
- 输入组
- 输入 OTP
- 项目
- Kbd
- 标签
- 菜单栏
- 原生选择框
- 导航菜单 Navigation Menu
- 分页
- 弹出框
- 进度 Progress
- 单选框组
- 可调整大小
- 滚动区域 Scroll Area
- 选择框
- 分隔符 Separator
- 侧边栏 Sheet
- 侧边栏 Sidebar
- 骨架屏
- 滑块
- Sonner
- 加载指示器 Spinner
- 开关
- 表格
- 标签页 Tabs
- 文本域
- 吐司
- 切换按钮 Toggle
- 切换组
- 提示 Tooltip
- 排版
1
2
3
4
5
6
import {
InputOTP,
InputOTPGroup,关于
Input OTP 构建于 input-otp 之上,由 @guilherme_rodz 开发。
安装
pnpm dlx shadcn@latest add input-otp
使用方法
import {
InputOTP,
InputOTPGroup,
InputOTPSeparator,
InputOTPSlot,
} from "@/components/ui/input-otp"<InputOTP maxLength={6}>
<InputOTPGroup>
<InputOTPSlot index={0} />
<InputOTPSlot index={1} />
<InputOTPSlot index={2} />
</InputOTPGroup>
<InputOTPSeparator />
<InputOTPGroup>
<InputOTPSlot index={3} />
<InputOTPSlot index={4} />
<InputOTPSlot index={5} />
</InputOTPGroup>
</InputOTP>模式
使用 pattern 属性定义 OTP 输入的自定义模式。
import { REGEXP_ONLY_DIGITS_AND_CHARS } from "input-otp"
;<InputOTP maxLength={6} pattern={REGEXP_ONLY_DIGITS_AND_CHARS}>
...
</InputOTP>"use client"
import { Field, FieldLabel } from "@/components/ui/field"示例
分隔符
使用 <InputOTPSeparator /> 组件在输入组之间添加分隔符。
import {
InputOTP,
InputOTPGroup,禁用状态
使用 disabled 属性禁用输入框。
1
2
3
4
5
6
import {
InputOTP,
InputOTPGroup,受控组件
使用 value 和 onChange 属性控制输入值。
Enter your one-time password.
"use client"
import * as React from "react"无效状态
在输入槽上使用 aria-invalid 来显示错误状态。
0
0
0
0
0
0
"use client"
import * as React from "react"四位数字
常见的 PIN 码模式。该示例使用 pattern={REGEXP_ONLY_DIGITS} 属性。
"use client"
import {字母数字混合
使用 REGEXP_ONLY_DIGITS_AND_CHARS 接受字母和数字。
"use client"
import {表单
Verify your login
Enter the verification code we sent to your email address: m@example.com.
Having trouble signing in? Contact support
import { Button } from "@/components/ui/button"
import {
Card,API 参考
更多信息请参阅 input-otp 文档。