修正网络请求逻辑,调整加载复位位置

This commit is contained in:
wzhqwq 2021-10-14 22:38:26 +08:00
父節點 bbcfe3e324
當前提交 c80ce3d31b
共有 3 個檔案被更改,包括 12 行新增10 行删除

查看文件

@ -70,7 +70,9 @@ export default function AvatarUnit({ avatar, nickname, onChangeAvatar, showTip }
const formData = new FormData(); const formData = new FormData();
formData.append("image", file); formData.append("image", file);
multiFormPost(apis.uploadAvatar, formData).then(data => { multiFormPost(apis.uploadAvatar, formData).then(data => {
if (data.networkStatus === 200 && data.status) { setUploading(false);
if (data.networkStatus !== 200) return;
if (data.status) {
setUploaded(true); setUploaded(true);
setTimeout(() => { setTimeout(() => {
handleClose(); handleClose();
@ -80,7 +82,6 @@ export default function AvatarUnit({ avatar, nickname, onChangeAvatar, showTip }
else { else {
alert('头像上传失败:' + data.data); alert('头像上传失败:' + data.data);
} }
setUploading(false);
}); });
} }
}, [file, onChangeAvatar]); }, [file, onChangeAvatar]);
@ -88,14 +89,15 @@ export default function AvatarUnit({ avatar, nickname, onChangeAvatar, showTip }
const handleChangeNickname = useCallback(() => { const handleChangeNickname = useCallback(() => {
setNicknameUploading(true); setNicknameUploading(true);
post(apis.updateNickname, { nickname: nicknameNow }).then(data => { post(apis.updateNickname, { nickname: nicknameNow }).then(data => {
if (data.networkStatus === 200 && data.status) { setNicknameUploading(false);
if (data.networkStatus !== 200) return;
if (data.status) {
alert('昵称已修改为:' + nicknameNow); alert('昵称已修改为:' + nicknameNow);
setNicknameNow(nicknameNow); setNicknameNow(nicknameNow);
} }
else { else {
alert('修改失败:' + data.data.map(item => item.msg).join(',')); alert('修改失败:' + data.data.map(item => item.msg).join(','));
} }
setNicknameUploading(false);
}); });
}, [nicknameNow]); }, [nicknameNow]);

查看文件

@ -91,12 +91,12 @@ async function send(xhr, retryConf) {
// 注意,理论上带有时间戳的请求是不可以重试的,但是这里不做那方面考虑,如果未来有需要,可以自己实现一个刷新时间戳重试的逻辑 // 注意,理论上带有时间戳的请求是不可以重试的,但是这里不做那方面考虑,如果未来有需要,可以自己实现一个刷新时间戳重试的逻辑
if (err.message === 'Network Error') if (err.message === 'Network Error')
return await failed('您的设备似乎断网了,或者服务器发生了问题,请检查网络后重试或刷新', flushWaitList) || failData; return (await failed('您的设备似乎断网了,或者服务器发生了问题,请检查网络后重试或刷新', flushWaitList)) || failData;
if (!err?.response?.status) if (!err?.response?.status)
return await failed('请求发生问题:' + err.message, flushWaitList) || failData; return (await failed('请求发生问题:' + err.message, flushWaitList)) || failData;
if (err.response.status === 504) if (err.response.status === 504)
return await failed('请求超时,请耐心等待几秒后重试或刷新', flushWaitList) || failData; return (await failed('请求超时,请耐心等待几秒后重试或刷新', flushWaitList)) || failData;
return await failed('服务器出现问题,请稍后重试或刷新,错误代码' + err.response.status, flushWaitList) || failData; return (await failed('服务器出现问题,请稍后重试或刷新,错误代码' + err.response.status, flushWaitList)) || failData;
} }
} }

查看文件

@ -44,12 +44,12 @@ export class UploadContainer extends Component {
if (this.state.submitting && (!this.state.file || this.state.url !== "")) { if (this.state.submitting && (!this.state.file || this.state.url !== "")) {
post(apis.submitMessage, { content: this.state.msg, image: this.state.url }) post(apis.submitMessage, { content: this.state.msg, image: this.state.url })
.then(({ data, status, networkStatus }) => { .then(({ data, status, networkStatus }) => {
this.setState({ submitting: false });
if (networkStatus !== 200) return; if (networkStatus !== 200) return;
if (!status) { if (!status) {
this.setState({ submitting: false });
return alert('提交内容失败:' + data); return alert('提交内容失败:' + data);
} }
this.setState({ submitting: false, msg: "", url: "", file: null }); this.setState({ msg: "", url: "", file: null });
alert('内容提交成功啦'); alert('内容提交成功啦');
}); });
} }