FileUpload 文件上传
表单控件
通过点击或拖拽上传文件,支持多选、类型限制、预览。
何时使用
文件上传组件,支持拖拽、批量上传和进度反馈。
代码示例
基础用法
tsx
import { FileUpload, FileList } from "@/components/ui/file-upload"
export function Basic() {
return (
<FileUpload>
<FileList>Content</FileList>
</FileUpload>
)
}API / Props
FileUpload
| Prop | Type | Default | 说明 |
|---|---|---|---|
className | string | — | 自定义样式类名 |
onDrop | () => void | — | |
accept | Record<string, string[]> | — | |
maxFiles | number | 5 | |
maxSize | number | — | |
disabled | boolean | — | 是否禁用 |
dropzone | boolean | false | |
| ...rest | React.HTMLAttributes | — | 透传原生 DOM 属性 |
注意事项
- Client Component: 使用
"use client",依赖 React hooks/状态,需在客户端渲染。 - 复合组件: 包含 1 个子组件(FileList),使用组合模式按需导入。
📘 完整交互式示例与控件属性请查看 Storybook 文档。