2025-10-28 11:28:18 +08:00
|
|
|
export interface UploadFile {
|
|
|
|
|
/** 原始文件对象 */
|
|
|
|
|
originFileObj?: File;
|
2025-11-01 17:58:18 +08:00
|
|
|
/** 文件URL */
|
|
|
|
|
filePath?: string;
|
|
|
|
|
/** 文件ID */
|
|
|
|
|
id?: string;
|
|
|
|
|
[key: string]: any;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export interface Params {
|
|
|
|
|
/** 文件类型 */
|
|
|
|
|
type: number;
|
|
|
|
|
/** 所属端 */
|
|
|
|
|
path: string;
|
|
|
|
|
/** 企业id */
|
|
|
|
|
corpinfoId: string;
|
|
|
|
|
/** 外键id */
|
|
|
|
|
foreignKey: string;
|
2025-10-28 11:28:18 +08:00
|
|
|
[key: string]: any;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export interface SingleUploadFileOptions {
|
|
|
|
|
/** 要上传的文件 */
|
2025-10-30 17:38:25 +08:00
|
|
|
files: UploadFile[];
|
2025-10-28 11:28:18 +08:00
|
|
|
/** 是否单文件上传 */
|
|
|
|
|
single?: true;
|
|
|
|
|
/** 上传的参数 */
|
2025-11-01 17:58:18 +08:00
|
|
|
params: Params;
|
2025-10-28 11:28:18 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export interface MultipleUploadFileOptions {
|
|
|
|
|
/** 要上传的文件 */
|
|
|
|
|
files: UploadFile[];
|
|
|
|
|
/** 是否单文件上传 */
|
|
|
|
|
single: false;
|
|
|
|
|
/** 上传的参数 */
|
2025-11-01 17:58:18 +08:00
|
|
|
params: Params;
|
2025-10-28 11:28:18 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export interface MultipleFileResponse {
|
|
|
|
|
/** 文件列表 */
|
|
|
|
|
files: string[];
|
|
|
|
|
/** 文件ID */
|
|
|
|
|
id: string;
|
|
|
|
|
[key: string]: any;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export interface UploadFileFunction {
|
|
|
|
|
(options: SingleUploadFileOptions): Promise<string>;
|
|
|
|
|
(options: MultipleUploadFileOptions): Promise<MultipleFileResponse>;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 上传文件
|
|
|
|
|
*/
|
2025-11-01 17:58:18 +08:00
|
|
|
export default function useUploadFile(returnType: "array"): [boolean, UploadFileFunction];
|
|
|
|
|
export default function useUploadFile(returnType?: "object"): { loading: boolean; uploadFile: UploadFileFunction };
|