Skip to content

AiFileCard 文件卡片

用卡片的形式展示文件,支持文档/图片/音视频类型、多种尺寸、加载状态与遮罩。

何时使用

用于在对话或输入场景中展示单个文件,如附件列表、消息气泡中的文件预览。

基础用法

传入 name(必填),可选 bytesizetypesrc 等。卡片统一宽高展示,长文件名自动省略,悬停可查看完整名称。

需求文档.pdf
100.0 KB
报表.xlsx
50.0 KB
预览图.png
这是一份非常长的文件名用于测试溢出省略效果.xlsx
200.0 KB
基础用法

卡片大小

通过 size 设置:smalldefaultlarge

small.pdf
default.pdf
large.pdf
卡片大小

图片文件

type="image" 且传入 src 时展示图片预览。

预览图.png
图片文件

图片加载

使用 loading 属性展示加载状态;加载中图片呈模糊并显示旋转图标,加载完成后由模糊过渡为清晰。下方示例通过按钮切换加载/完成状态。

loading.png
loading2.png
图片加载

使用遮罩

通过 mask 在卡片上显示遮罩文案(如「已加密」)。

已加密.pdf
100.0 KB
已加密
使用遮罩

预设图标类型

通过 icon 使用预设图标,支持以下类型:defaultpdfexcelwordpptimagemarkdownzipvideoaudiojavajavascriptpythontxt。也可不传 icon,由文件名扩展名自动推断。

default.pdf
100.0 KB
doc.pdf
100.0 KB
sheet.xlsx
50.0 KB
doc.docx
80.0 KB
slides.pptx
300.0 KB
image.png
50.0 KB
readme.md
2.0 KB
archive.zip
1000.0 KB
video.mp4
4.9 MB
audio.mp3
1000.0 KB
Main.java
4.0 KB
index.js
2.0 KB
main.py
1.0 KB
note.txt
512.0 B
预设图标类型

音频 / 视频

Ant Design X FileCard 一致,使用浏览器原生 <audio> / <video>,传入 src可直接播放。超过 2 个时采用遍历方式展示(v-for),悬停点击删除按钮可移除该项。无 src 时展示预设图标占位。可通过 audioProps / videoProps 扩展原生播放能力。

audio-file.mp3
1.0 KB
video-file.mp4
1.0 KB
audio-2.mp3
2.0 KB
video-2.mp4
3.0 KB
音频 / 视频

文件列表

多个文件卡片可与 AiAttachments 配合使用,由 AiAttachments 负责列表布局、溢出方式与删除,详见 AiAttachments 附件

API

FileCard Props

属性说明类型默认值
name文件名称(必填)string-
byte文件大小(字节)number-
size卡片大小'small' | 'default' | 'large''default'
type文件类型'file' | 'image' | 'audio' | 'video' | string'file'
src图片或文件地址string-
description文件描述string-
loading是否加载中booleanfalse
mask遮罩内容string-
icon预设图标PresetFileIcons'default'
imageProps图片属性(透传给 img 元素)Record<string, unknown>{}
videoProps视频属性(透传给 video 元素)Record<string, unknown>{}
audioProps音频属性(透传给 audio 元素)Record<string, unknown>{}
themeOverrides主题覆盖变量Record<string, unknown>-

Slots

插槽名说明
default扩展内容,用于挂载删除按钮、进度条等(如与 AiAttachments 配合时的删除与上传进度)

PresetFileIcons

预设图标类型:

  • default - 默认文件图标
  • excel - Excel 文件图标
  • image - 图片文件图标
  • markdown - Markdown 文件图标
  • pdf - PDF 文件图标
  • ppt - PowerPoint 文件图标
  • word - Word 文件图标
  • zip - 压缩文件图标
  • video - 视频文件图标
  • audio - 音频文件图标
  • java - Java 文件图标
  • javascript - JavaScript 文件图标
  • python - Python 文件图标
  • txt - 文本文件图标

FileCardListItem

列表项接口继承自 FileCardProps,还扩展了以下属性:

属性说明类型
uid唯一标识string | number
url文件 URLstring
thumbUrl缩略图 URLstring

Events

事件名说明
click卡片点击时触发(非加载中时);图片类型点击会打开预览

Released under the MIT License.