表单与选择@neumorphism-ui/input

Input

透传原生 input 的全部属性,并统一呈现拟物 inset 表面、file input、disabled 和 aria-invalid 状态。

@neumorphism-ui/input
Registry JSON

预览

安装

安装: inputnpx shadcn@latest add @neumorphism-ui/input

CLI 会依次处理 npm 依赖、base token、utils 和组件源码。

首次使用此 Registry?请先完成 namespace 配置 。

用法

用法: 安装npx shadcn@latest add @neumorphism-ui/input @neumorphism-ui/label

Import

Input import 代码
import { Input } from "@/components/ui/input"
import { Label } from "@/components/ui/label"

Example

Input 用法代码
<div className="grid gap-2">
  <Label htmlFor="email">电子邮箱</Label>
  <Input
    id="email"
    name="email"
    type="email"
    placeholder="you@example.com"
    autoComplete="email"
  />
</div>

API 参考

组件属性类型默认值说明
InputtypeReact.HTMLInputTypeAttribute"text" (browser default)email、password、file 等原生 input 类型。
Inputvalue / defaultValuestring | number—受控值或非受控初始值。
Inputplaceholderstring—用于提示输入格式的简短示例。
Inputdisabled / required / readOnlybooleanfalse设置原生输入限制。
Inputaria-invalidboolean | string—启用错误状态边框和 focus ring。

无障碍

  • 01

    将 Label 的 htmlFor 与 Input 的 id 关联,或提供 aria-label。

  • 02

    placeholder 不能替代 Label,只应用作输入格式示例。

  • 03

    出现错误时,应设置 aria-invalid,并通过 aria-describedby 关联错误文案的 id。