关于
a-upload
中customRequest
customRequest回调参数
onProgress: (event: { percent: number }): void
onError: (event: Error, body?: Object): void
onSuccess: (body: Object): void
data: Object
filename: String
file: File
withCredentials: Boolean
action: String
headers: Object
其中注意如果要改变上传文件的status
,必须要执行onSuccess
或者失败的onError
,当然还有上传进度onProgress
。不执行就会一直时uploading
状态
React
中customRequest
参考
template
:
<a-upload
v-model:file-list="fileList"
list-type="picture-card"
:customRequest="customRequest"
>
<div v-if="fileList.length < 8">
<plus-outlined />
<div class="m-t-8">上传</div>
</div>
</a-upload>
ts:
const formData = new FormData();
formData.append("file", file);
uploadFile(formData, {
onUploadProgress: ({ total, loaded }: any) => {
onProgress(
{ percent: Math.round((loaded / total) * 100).toFixed(2) },
file
);
}
})
.then(res => {
onSuccess(res);
})
.catch(error => {
onError(error);
});
注意执行onSuccess
,fileList成功绑定
如下