tdesign-mobile-vue
Version:
tdesign-mobile-vue
29 lines (28 loc) • 1.01 kB
TypeScript
import { ComputedRef, Ref, ShallowRef } from 'vue';
import { TdUploadProps, UploadFile, UploadRemoveContext } from '../type';
export type ValidateParams = Parameters<TdUploadProps['onValidate']>[0];
export default function useUpload(props: TdUploadProps): {
toUploadFiles: ShallowRef<UploadFile[]>;
uploadValue: Ref<UploadFile[]>;
displayFiles: ComputedRef<UploadFile[]>;
sizeOverLimitMessage: Ref<string>;
uploading: Ref<boolean>;
inputRef: Ref<HTMLInputElement>;
disabled: Ref<boolean>;
xhrReq: ShallowRef<{
files: UploadFile[];
xhrReq: XMLHttpRequest;
}[]>;
uploadFilePercent: (params: {
file: UploadFile;
percent: number;
}) => void;
uploadFiles: (toFiles?: UploadFile[]) => void;
onFileChange: (files: File[]) => void;
onNormalFileChange: (e: Event) => void;
onInnerRemove: (context: UploadRemoveContext) => void;
cancelUpload: (context?: {
file?: UploadFile;
e?: MouseEvent;
}) => void;
};