跳转到内容

FileInput

文件输入组件,支持多个文件、文件类型过滤和各种样式。

import { FileInput } from 'asterui'

基础文件输入

简单的文件输入。

import { FileInput } from 'asterui'

function App() {
  return (
      <FileInput />
    )
}

export default App

接受类型

仅接受特定文件类型的文件输入。

import { FileInput, Space } from 'asterui'

function App() {
  return (
      <Space direction="vertical" size="md">
        <div>
          <label className="block text-sm font-medium mb-2">Images only</label>
          <FileInput accept="image/*" />
        </div>
        <div>
          <label className="block text-sm font-medium mb-2">PDF files only</label>
          <FileInput accept=".pdf" />
        </div>
        <div>
          <label className="block text-sm font-medium mb-2">Images and PDFs</label>
          <FileInput accept="image/*,.pdf" />
        </div>
      </Space>
    )
}

export default App

多个文件

允许选择多个文件。

import { FileInput } from 'asterui'

function App() {
  return (
      <FileInput multiple />
    )
}

export default App

尺寸

不同的文件输入尺寸。

import { FileInput, Space } from 'asterui'

function App() {
  return (
      <Space direction="vertical" size="md">
        <FileInput size="xs" />
        <FileInput size="sm" />
        <FileInput size="md" />
        <FileInput size="lg" />
      </Space>
    )
}

export default App

颜色

不同的颜色变体。

import { FileInput, Space } from 'asterui'

function App() {
  return (
      <Space direction="vertical" size="md">
        <FileInput color="primary" />
        <FileInput color="secondary" />
        <FileInput color="accent" />
        <FileInput color="success" />
        <FileInput color="warning" />
        <FileInput color="error" />
      </Space>
    )
}

export default App

样式

带边框和幽灵样式。

import { FileInput, Space } from 'asterui'

function App() {
  return (
      <Space direction="vertical" size="md">
        <FileInput bordered color="primary" />
        <FileInput ghost color="secondary" />
      </Space>
    )
}

export default App
属性描述类型默认值
accept接受的文件类型string-
multiple允许多文件选择booleanfalse
onChange变化处理器(e: ChangeEvent) => void-
disabled禁用输入booleanfalse
size输入尺寸'xs' | 'sm' | 'md' | 'lg''md'
color输入颜色'primary' | 'secondary' | 'accent' | 'info' | 'success' | 'warning' | 'error'-
bordered显示边框booleanfalse
ghost幽灵样式booleanfalse
className额外的 CSS 类名string-
data-testid用于测试的测试 IDstring-
  • 使用原生 <input type="file"> 以获得完整的键盘支持
  • 始终与描述性的 <label> 配对以提高可访问性
  • accept 属性帮助用户选择适当的文件