From f5e33a883f43a1421eada592a7467bcce30bc048 Mon Sep 17 00:00:00 2001 From: moonrailgun Date: Sat, 11 Dec 2021 21:07:44 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=A2=9E=E5=8A=A0=E4=B8=8A=E4=BC=A0?= =?UTF-8?q?=E5=A4=B1=E8=B4=A5=E9=80=9A=E7=94=A8=E6=8A=A5=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- shared/utils/upload-helper.ts | 31 +++++++++++++++++++------------ 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/shared/utils/upload-helper.ts b/shared/utils/upload-helper.ts index 5c82885b..e4b1bbe5 100644 --- a/shared/utils/upload-helper.ts +++ b/shared/utils/upload-helper.ts @@ -1,4 +1,6 @@ +import { showToasts, t } from '..'; import { request } from '../api/request'; +import _get from 'lodash/get'; interface UploadFileOptions { onProgress?: (percent: number, progressEvent: unknown) => void; @@ -19,18 +21,23 @@ export async function uploadFile( const form = new FormData(); form.append('file', file); - const { data } = await request.post('/upload', form, { - onUploadProgress(progressEvent) { - if (progressEvent.lengthComputable) { - if (typeof options.onProgress === 'function') { - options.onProgress( - progressEvent.loaded / progressEvent.total, - progressEvent - ); + try { + const { data } = await request.post('/upload', form, { + onUploadProgress(progressEvent) { + if (progressEvent.lengthComputable) { + if (typeof options.onProgress === 'function') { + options.onProgress( + progressEvent.loaded / progressEvent.total, + progressEvent + ); + } } - } - }, - }); + }, + }); - return data; + return data; + } catch (e) { + showToasts(`${t('上传失败')}: ${_get(e, 'message')}`, 'error'); + throw e; + } }