R后悔药 Rue.js
  • 首页
    • 深度指南
    • 实战例子
    • 快速上手
    • 路由指南
    • 术语表
    • 错误代码参考
  • API
    • 合作伙伴
    • 插件
    • 组件库
    • 工具链
    • Text.js
    • 新闻简报
    • 常见问题
    • 团队
    • 版本发布
    • 社区指南
    • 行为规范
    • 隐私政策
  • 赞助
  • 合作伙伴
设置
目录统计
总条目
  • 按钮 Button
  • 排版 Typography
  • 时间选择器 TimePicker
  • 下拉菜单 Dropdown
  • 悬浮操作按钮 FAB
  • 模态框 Modal
  • 切换 Swap
  • 主题控制器 Theme Controller
  • 手风琴 Accordion
  • 头像 Avatar
  • 徽标 Badge
  • 卡片 Card
  • 轮播 Carousel
  • 聊天气泡 Chat
  • 折叠面板 Collapse
  • 倒计时 Countdown
  • 描述列表 Descriptions
  • 对比 Diff
  • 二维码 QRCode
  • 悬浮 3D 卡片 Hover 3D
  • 悬浮画廊 Hover Gallery
  • 键盘提示 Kbd
  • 列表 List
  • 统计 Stat
  • 状态 Status
  • 表格 Table
  • 文本轮播 Text Rotate
  • 时间线 Timeline
  • 锚点 Anchor
  • 固钉 Affix
  • 面包屑 Breadcrumbs
  • 底部导航 Dock
  • 链接 Link
  • 菜单 Menu
  • 导航栏 Navbar
  • 分页 Pagination
  • 步骤 Steps
  • 选项卡 Tabs
  • 提示 Alert
  • 结果页 Result
  • 空状态 Empty
  • 加载 Loading
  • 全局提示 Message
  • 进度条 Progress
  • 环形进度 Radial Progress
  • 骨架屏 Skeleton
  • 通知提醒框 Notification
  • 轻提示 Toast
  • 气泡确认框 Popconfirm
  • 气泡卡片 Popover
  • 工具提示 Tooltip
  • 日历 Calendar
  • 颜色选择器 ColorPicker
  • 复选框 Checkbox
  • 字段集 Fieldset
  • 表单 Form
  • 文件输入 File Input
  • 筛选器 Filter
  • 标签 Label
  • 单选框 Radio
  • 范围选择 Range
  • 评分 Rating
  • 分段选择 Segmented
  • 自动完成 AutoComplete
  • 选择器 Select
  • 树选择 TreeSelect
  • 树控件 Tree
  • 提及输入 Mentions
  • 穿梭框 Transfer
  • 漫游引导 Tour
  • 输入框 Input
  • 数字输入 InputNumber
  • 文本域 Textarea
  • 开关 Toggle
  • 校验器 Validator
  • 分隔线 Divider
  • 弹性布局 Flex
  • 分割面板 Splitter
  • 抽屉侧边栏 Drawer
  • 页脚 Footer
  • 栅格 Grid
  • 瀑布流 Masonry
  • 布局 Layout
  • 主视觉区 Hero
  • 指示器 Indicator
  • 组合项 Join
  • 蒙版 Mask
  • 水印 Watermark
  • 间距 Space
  • 堆叠 Stack
  • 浏览器样机 Mockup Browser
  • 代码样机 Mockup Code
  • 手机样机 Mockup Phone
  • 窗口样机 Mockup Window
目录统计
总条目
  • 按钮 Button
  • 排版 Typography
  • 时间选择器 TimePicker
  • 下拉菜单 Dropdown
  • 悬浮操作按钮 FAB
  • 模态框 Modal
  • 切换 Swap
  • 主题控制器 Theme Controller
  • 手风琴 Accordion
  • 头像 Avatar
  • 徽标 Badge
  • 卡片 Card
  • 轮播 Carousel
  • 聊天气泡 Chat
  • 折叠面板 Collapse
  • 倒计时 Countdown
  • 描述列表 Descriptions
  • 对比 Diff
  • 二维码 QRCode
  • 悬浮 3D 卡片 Hover 3D
  • 悬浮画廊 Hover Gallery
  • 键盘提示 Kbd
  • 列表 List
  • 统计 Stat
  • 状态 Status
  • 表格 Table
  • 文本轮播 Text Rotate
  • 时间线 Timeline
  • 锚点 Anchor
  • 固钉 Affix
  • 面包屑 Breadcrumbs
  • 底部导航 Dock
  • 链接 Link
  • 菜单 Menu
  • 导航栏 Navbar
  • 分页 Pagination
  • 步骤 Steps
  • 选项卡 Tabs
  • 提示 Alert
  • 结果页 Result
  • 空状态 Empty
  • 加载 Loading
  • 全局提示 Message
  • 进度条 Progress
  • 环形进度 Radial Progress
  • 骨架屏 Skeleton
  • 通知提醒框 Notification
  • 轻提示 Toast
  • 气泡确认框 Popconfirm
  • 气泡卡片 Popover
  • 工具提示 Tooltip
  • 日历 Calendar
  • 颜色选择器 ColorPicker
  • 复选框 Checkbox
  • 字段集 Fieldset
  • 表单 Form
  • 文件输入 File Input
  • 筛选器 Filter
  • 标签 Label
  • 单选框 Radio
  • 范围选择 Range
  • 评分 Rating
  • 分段选择 Segmented
  • 自动完成 AutoComplete
  • 选择器 Select
  • 树选择 TreeSelect
  • 树控件 Tree
  • 提及输入 Mentions
  • 穿梭框 Transfer
  • 漫游引导 Tour
  • 输入框 Input
  • 数字输入 InputNumber
  • 文本域 Textarea
  • 开关 Toggle
  • 校验器 Validator
  • 分隔线 Divider
  • 弹性布局 Flex
  • 分割面板 Splitter
  • 抽屉侧边栏 Drawer
  • 页脚 Footer
  • 栅格 Grid
  • 瀑布流 Masonry
  • 布局 Layout
  • 主视觉区 Hero
  • 指示器 Indicator
  • 组合项 Join
  • 蒙版 Mask
  • 水印 Watermark
  • 间距 Space
  • 堆叠 Stack
  • 浏览器样机 Mockup Browser
  • 代码样机 Mockup Code
  • 手机样机 Mockup Phone
  • 窗口样机 Mockup Window

File Input 文件选择

Rue File Input 展示基础file-input样式入口,同时补充更常用的 文件列表、拖拽、图片卡片、受控/非受控和选择前校验能力。

支持优先

不传语义 API 时,仍然直出原生文件输入框。

推荐增强
列表、拖拽、图片卡片

把最常见的 Upload 场景收敛到一个组件里,业务只关心列表状态。

业务可接管
拦截、预览、删除都可自定义

适合手动上传、服务端校验和媒体素材管理等场景。

# Recommended upload-like

适合“先选择,再统一上传”的工作流,默认列表已接近 Upload 的核心体验。

# Controlled fileList

当前为受控模式,列表变化会先进入业务状态,再决定何时上传。

# Dragger

# Picture Card

点击卡片右上角预览按钮,会在这里记录最近一次预览。

# beforeUpload Validation

仅允许 `image/*`,且每个文件不超过 2MB。

# File input

# File input ghost

# With fieldset and label

Pick a file

# File input sizes

# File input colors

# Disabled

API

语义模式尽量贴近 Upload 的核心组织方式,但仍然使用 Rue 的视觉和更轻的心智负担。

属性说明类型默认值
color / variant / size / ghost`color` 对齐 Rue Design 语义色;`variant` 作为颜色写法支持。不传语义 API 时仍直接渲染原生 input。FileInputColor / FileInputVariant / FileInputSize / boolean-
fileList / defaultFileList受控与非受控文件列表;条目支持 `uid/name/status/url/thumbUrl/originFileObj/description`。FileInputFile[]-
listType切换文本列表、缩略图列表和图片卡片栅格。'text' | 'picture' | 'picture-card''text'
drag / FileInput.Dragger启用拖拽选区;`FileInput.Dragger` 是 `drag` 的快捷写法。booleanfalse
showUploadList控制列表显隐,或进一步配置预览/删除图标、extra 和 itemRender。boolean | FileInputShowUploadListtrue
beforeUpload选择前拦截或转换文件;返回 `FileInput.LIST_IGNORE` 可阻止文件进入列表。(file, fileList) => boolean | File | Blob | Promise<...>-
maxCount / multiple / directory限制数量、开启多选或目录选择;`maxCount=1` 时自动保持最新文件。number / boolean / boolean-
onChange / onPreview / onRemove语义模式下返回 Upload 风格的列表信息,便于业务侧接管上传、预览和删除确认。function-
title / description / hint / buttonText / empty快速定制触发区和空态文案,不必每次都自建包装容器。any-
rootClassName / triggerClassName / listClassName / itemClassName语义模式的根容器、触发区、列表和单项样式入口。string-

FAQ

它会自动上传文件吗?

不会。组件负责文件选择、列表展示和交互,真正上传仍建议在业务层根据onChange的结果触发。

怎样阻止文件进入列表?

在beforeUpload中返回FileInput.LIST_IGNORE,即可把非法文件直接挡在列表外。

当前项目需要调整吗?

不需要。基础的variant / size / ghost / disabled 写法继续可用,按需切换到语义模式即可。

页内导航
页内导航
文档
  • 深度指南
  • 实战例子
  • 快速上手
  • 术语表
  • 错误码参照表
关于
  • 常见问题
  • 团队
  • 版本发布
  • 社区指南
生态
  • 插件
  • 组件库
  • 路由指南
  • Text.js
© 2024-2026 Xiangmin Liu
Rue.JS