| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- export interface UploaderItem {
- /**
- * 上传文件源路径
- */
- filePath: string;
- /**
- * 上传完成后的文件路径
- */
- uploadedPath?: string;
- /**
- * 文件的大小(B)
- */
- size?: number;
- /**
- * 指示当前文件是否是图片,如果设置为 true,则预览时会调用 ImagePreview 打开,否则会调用 Linking.openURL 预览资源。
- */
- isImage?: boolean;
- /**
- * 在已上传列表中显示的预览图像,为空时使用 filePath
- */
- previewPath?: string;
- /**
- * 当前状态
- */
- state: 'notstart'|'uploading'|'success'|'fail';
- /**
- * 当失败时显示
- */
- message?: string;
- /**
- * 当前上传进度,0-100
- */
- progress?: number;
- /**
- * 取消上传回调
- */
- cancelUpload?: () => void;
- }
- export interface UploaderAction {
- /**
- * 当前上传条目
- */
- item: UploaderItem;
- /**
- * 当上传进度变化时需要调用
- * @param precent 当前上传百分比,0-100
- */
- onProgress: (precent: number) => void;
- /**
- * 当开始上传时需要调用
- */
- onStart: (message?: string) => void;
- /**
- * 当上传失败时需要调用
- * @param error 当前错误信息,会显示在条目中
- */
- onError: (error: unknown) => void;
- /**
- * 当上传完成时需要调用
- * @param result 上传完成后的结果
- * @param message 上传完成后的消息,会显示在条目中
- */
- onFinish: (result: {
- /**
- * 上传完成后的文件路径
- */
- uploadedUrl: string;
- /**
- * 上传完成后的预览图像路径,为空时不修改
- */
- previewUrl?: string;
- }, message?: string) => void;
- }
- export function stringUrlToUploaderItem(url: string): UploaderItem {
- return {
- filePath: url,
- uploadedPath: url,
- state: 'success',
- }
- }
|