@jrlapple/cloud-storage-lib-uploader
v1.1.7
Published
A library for uploading files to cloud storage
Readme
文件上传队列库
基于 IndexedDB 的文件上传队列库,支持大文件分片上传、断点续传、并发控制等功能。
安装
基本用法
import { Uploader, ApiMock, ObsMock } from 'upload-queue-lib';
// 创建上传器实例
const uploader = new Uploader(new ApiMock(), new ObsMock());
// 添加文件到上传队列
// fileList: File[] 类型,包含要上传的文件列表
// targetPath: string 类型,目标上传路径
uploader.addFiles(fileList, '/target/path');
// 监听上传进度事件
uploader.on('uploadFileProgress', (fileInfo, progress) => {
console.log(`文件 ${fileInfo.rawFileInfo.name} 上传进度: ${progress.progress.toFixed(2)}%`);
});
// 监听上传完成事件
uploader.on('uploadFileCompleted', (fileInfo) => {
console.log(`文件 ${fileInfo.rawFileInfo.name} 上传完成`);
});
// 监听上传失败事件
uploader.on('uploadFileFailed', (fileInfo, error) => {
console.error(`文件 ${fileInfo.rawFileInfo.name} 上传失败:`, error);
});参数说明
fileList: 要上传的文件列表,类型为File[]targetPath: 文件上传的目标路径,类型为stringfileInfo: 文件信息对象,包含文件名、大小等基本信息progress: 上传进度对象,包含当前进度百分比等信息
事件说明
uploadFileProgress: 文件上传进度更新时触发uploadFileCompleted: 文件上传完成时触发uploadFileFailed: 文件上传失败时触发
特性
- 大文件分片上传
- 断点续传
- 并发控制
- 进度跟踪
- 基于 IndexedDB 的持久化存储
