Skip to main content

表单 Form

本组件为 React 表单管理提供了一整套支持。通过结合 react-hook-formRadix UI,可以高效构建表单,同时提供动态验证与错误提示。


📦 引入方式

import { Form, FormControl, FormField, FormItem, FormLabel, FormMessage } from '@npmqg/react-ui-form';

🧩 使用示例

📚 基本表单


📦 组件 API

组件名描述主要 Props(类型 - 说明)
Form封装自 FormProvider,用于提供表单上下文...formProps:来自 react-hook-form 的属性
FormField封装 Controller,用于管理单个字段name (string) - 字段名
control (Control) - 控制器对象
render (function) - 渲染函数
FormLabel表单字段的标签,自动关联对应控件htmlFor (string) - 绑定控件 ID
className (string) - 样式类
FormControl结合无障碍属性与错误信息的容器aria-describedby (string) - 描述信息 ID
aria-invalid (boolean) - 是否无效
FormDescription表单字段的描述信息className (string) - 自定义样式类
FormMessage显示表单字段的错误信息children (ReactNode) - 错误内容
className (string) - 自定义样式类

📦 依赖项

  • react-hook-form:用于管理表单状态和验证。
  • @radix-ui/react-label@radix-ui/react-slot:用于 UI 组件的标签和插槽功能。

🧰 使用建议

  • 使用 Form 作为表单的根容器,它将为表单提供 react-hook-form 的上下文。
  • 使用 FormField 包裹每个表单字段,确保字段的值和验证规则正确传递。
  • 使用 FormItem 作为容器,管理表单控件和错误信息的展示。
  • 使用 FormLabelFormControlFormMessage 等子组件实现表单控件的标签、输入框和错误提示。