一套遵循浏览器原生开发模式的 Web UI 组件库,无需前端框架即可构建界面。
pqina/filepond
一个 JavaScript 文件上传库,支持拖拽上传、图片优化、分块上传,并提供 React、Vue 等框架适配器。
- Star
- 16,393
- Fork
- 852
- 未关闭 Issue
- 147
- 最近提交
- 10天前
这是什么?
FilePond 是一个用于浏览器端文件上传的 JavaScript 库。用户可以拖拽文件、从本地选择、粘贴,或通过 API 添加文件,输入源包括目录、Blob、远程 URL 和 Data URI。
在处理环节,它可以在上传前对图片进行缩放、裁剪、滤镜和旋转处理,并修正 EXIF 方向。文件可以通过 AJAX 异步上传、分块上传,或以 base64 编码随表单一起提交。界面支持键盘操作,并经过 VoiceOver、JAWS 等读屏软件测试,同时适配移动端和桌面端。
核心库通过插件扩展,涵盖预览、类型与大小校验、文件重命名、元数据和 PDF 处理等功能。官方提供 React、Vue、Angular、Svelte 和 jQuery 适配器,社区也为多个服务端框架提供了集成方案。
核心功能
- 01支持拖拽、文件选择、粘贴或 API 添加文件、目录、远程 URL 与 Data URI。
- 02支持分块上传和 AJAX 异步上传,也可将文件以 base64 编码随表单提交。
- 03上传前可对图片进行缩放、裁剪、滤镜处理,并修正 EXIF 方向。
- 04界面支持键盘操作,并经过 VoiceOver、JAWS 等读屏软件测试。
- 05通过插件扩展预览、校验和元数据等功能。
适用场景
- 在 Web 应用中加入头像或图片上传,并在客户端完成缩放。
- 在 React、Vue、Angular 或 Svelte 项目中构建多文件上传表单。
- 从浏览器向后端分块上传大文件。
- 为依赖读屏软件的用户提供可访问的上传组件。
快速上手
- 1
从 npm 安装 FilePond
npm install filepond - 2
导入 FilePond 并创建多文件上传组件
import * as FilePond from 'filepond'; - 3
将组件添加到 DOM 中
使用前须知
- 快速开始中的代码只是示例,你仍需要一个后端接口来接收上传的文件。
- 根据 README,测试覆盖率约为 65%。
- v5 处于 alpha 测试阶段,主要 API 可能会发生变化。
收录于专题
标签
常见问题
- filepond 是什么?
- 一个 JavaScript 文件上传库,支持拖拽上传、图片优化、分块上传,并提供 React、Vue 等框架适配器。 FilePond 是一个用于浏览器端文件上传的 JavaScript 库。用户可以拖拽文件、从本地选择、粘贴,或通过 API 添加文件,输入源包括目录、Blob、远程 URL 和 Data URI。
- filepond 可以免费使用吗?用的什么许可证?
- filepond 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- filepond 还在维护吗?
- 活跃维护中。filepond 最近一次提交是在 2026年10月28日。
- filepond 适合用来做什么?
- 在 Web 应用中加入头像或图片上传,并在客户端完成缩放。 在 React、Vue、Angular 或 Svelte 项目中构建多文件上传表单。 从浏览器向后端分块上传大文件。 为依赖读屏软件的用户提供可访问的上传组件。
- filepond 怎么安装和运行?
- 从 npm 安装 FilePond: npm install filepond 导入 FilePond 并创建多文件上传组件: import * as FilePond from 'filepond'; 将组件添加到 DOM 中
- 在哪里获取 filepond?
- 源代码和安装说明在 GitHub 上:https://github.com/pqina/filepond
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
3.1万7343JavaScriptMIT维护活跃更新于 前天
模块化的浏览器端 JavaScript 文件上传组件,支持断点续传、云端文件选取和现成的上传界面。
3.1万2114TypeScriptMIT维护活跃更新于 前天
一个轻量、可定制的 Vue 移动端 Web UI 组件库,提供 80 多个组件。
2.4万+5 本周9355TypeScriptMIT更新于 前天
可自托管的图片、GIF、MP4、音频与文本托管服务,提供上传 API,并可通过 URL 实时缩放和滤镜处理。
952+1 本周137PHPOther维护活跃更新于 11天前
在 React 应用中像显示图片一样渲染 PDF 文件的组件库,基于 PDF.js。
1.1万+7 本周1004TypeScriptMIT维护活跃更新于 10天前
基于 Material Design 的 Vue 组件框架,提供响应式的精致 UI 组件,用于构建 Web 应用。
4.1万7104TypeScriptOther更新于 22小时前