feat: add examples: form-upload (#5955)

* feat: add examples: form-upload

* fix: upload: accept and label

* fix: upload: 设置表单值、图片预览
This commit is contained in:
yuh
2025-04-17 14:00:46 +08:00
committed by GitHub
parent f7a4d13a4c
commit 4baec83db5
6 changed files with 106 additions and 3 deletions

View File

@@ -0,0 +1,25 @@
import { requestClient } from '#/api/request';
interface UploadFileParams {
file: File;
onError?: (error: Error) => void;
onProgress?: (progress: { percent: number }) => void;
onSuccess?: (data: any, file: File) => void;
}
export async function upload_file({
file,
onError,
onProgress,
onSuccess,
}: UploadFileParams) {
try {
onProgress?.({ percent: 0 });
const data = await requestClient.upload('/upload', { file });
onProgress?.({ percent: 100 });
onSuccess?.(data, file);
} catch (error) {
onError?.(error instanceof Error ? error : new Error(String(error)));
}
}