组件
- 手风琴 (Accordion)
- 警示框 (Alert)
- 对话框 (Alert Dialog)
- 宽高比 (Aspect Ratio)
- 头像 (Avatar)
- 徽章 (Badge)
- 面包屑 (Breadcrumb)
- 按钮 (Button)
- 按钮组 (Button Group)
- 日历 (Calendar)
- 卡片 (Card)
- 轮播 (Carousel)
- 图表 (Chart)
- 复选框 (Checkbox)
- 折叠面板 (Collapsible)
- 组合框 (Combobox)
- 命令栏 (Command)
- 上下文菜单 (Context Menu)
- 数据表格 (Data Table)
- 日期选择器 (Date Picker)
- 对话框 (Dialog)
- 方向 (Direction)
- 抽屉 (Drawer)
- 下拉菜单 (Dropdown Menu)
- 空状态 (Empty)
- 字段 (Field)
- 悬浮卡片 (Hover Card)
- 输入框 (Input)
- 输入框组 (Input Group)
- OTP 输入框 (Input OTP)
- 项目 (Item)
- 快捷键 (Kbd)
- 标签 (Label)
- 菜单栏 (Menubar)
- 原生选择框 (Native Select)
- 导航菜单 (Navigation Menu)
- 分页 (Pagination)
- 气泡卡片 (Popover)
- 进度条 (Progress)
- 单选组 (Radio Group)
- 可调节大小 (Resizable)
- 滚动区域 (Scroll Area)
- 选择框 (Select)
- 分隔线 (Separator)
- 侧边栏 (Sheet)
- 导航侧边栏 (Sidebar)
- 骨架屏 (Skeleton)
- 滑块 (Slider)
- Sonner (吐司通知)
- 加载器 (Spinner)
- 开关 (Switch)
- 表格 (Table)
- 标签页 (Tabs)
- 文本域 (Textarea)
- 吐司 (Toast)
- 切换按钮 (Toggle)
- 切换组 (Toggle Group)
- 文字提示 (Tooltip)
- 排版 (Typography)
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)
使用 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 属性来控制输入值。
输入您的验证码。
"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 {表单
import { Button } from "@/components/ui/button"
import {
Card,RTL (从右至左)
要在 shadcn/ui 中启用 RTL 支持,请参阅 RTL 配置指南。
1
2
3
4
5
6
"use client"
import * as React from "react"API 参考
参阅 input-otp 文档以获取更多信息。