perf: 优化首页加载失败的情况

This commit is contained in:
kuaifan 2022-06-07 12:22:00 +08:00
parent 94b3014051
commit a32faf1a99
4 changed files with 50 additions and 27 deletions

View File

@ -0,0 +1,33 @@
<template>
<div v-if="[-1, 0].includes(userState)" class="app-view-loading">
<div v-if="userState === -1" class="load-error" @click="onClick">
{{$L('加载失败,点击重试')}}
</div>
<div v-else>
<div>PAGE LOADING</div>
<span></span>
<span></span>
<span></span>
<span></span>
<span></span>
<span></span>
<span></span>
</div>
</div>
</template>
<script>
export default {
name: 'ManageLoad',
props: {
userState: {
type: Number,
},
},
methods: {
onClick() {
this.$emit('on-click')
}
}
}
</script>

View File

@ -1,20 +0,0 @@
<template>
<div class="app-view-loading">
<div>
<div>PAGE LOADING</div>
<span></span>
<span></span>
<span></span>
<span></span>
<span></span>
<span></span>
<span></span>
</div>
</div>
</template>
<script>
export default {
name: 'PageLoading',
}
</script>

View File

@ -236,7 +236,7 @@
</div>
<!--等待覆盖层-->
<PageLoading v-if="userLoad" class="manage-box-load"/>
<ManageLoad :user-state="userState" class="manage-box-load" @on-click="loadUser"/>
<!--新建项目-->
<Modal
@ -381,13 +381,13 @@ import DialogModal from "./manage/components/DialogModal";
import TaskModal from "./manage/components/TaskModal";
import notificationKoro from "notification-koro1";
import {Store} from "le5le-store";
import PageLoading from "../components/PageLoading";
import ManageLoad from "../components/ManageLoad";
import TaskOperation from "./manage/components/TaskOperation";
export default {
components: {
TaskOperation,
PageLoading,
ManageLoad,
TaskModal,
DialogModal,
MeetingManager,
@ -405,7 +405,7 @@ export default {
data() {
return {
loadIng: 0,
userLoad: true,
userState: 0,
mateName: /macintosh|mac os x/i.test(navigator.userAgent) ? '⌘' : 'Ctrl',
@ -461,9 +461,7 @@ export default {
$A.messageSuccess("清除成功");
}
//
this.$store.dispatch("getUserInfo").then(_ => {
this.userLoad = false;
}).catch(_ => {})
this.loadUser();
this.$store.dispatch("getTaskPriority").catch(_ => {})
//
this.getReportUnread(0);
@ -728,6 +726,15 @@ export default {
};
},
loadUser() {
this.userState = 0;
this.$store.dispatch("getUserInfo").then(_ => {
this.userState = 1;
}).catch(_ => {
this.userState = -1;
})
},
chackPass() {
if (this.userInfo.changepass === 1) {
this.goForward({name: 'manage-setting-password'});

View File

@ -268,6 +268,9 @@
bottom: 0;
z-index: 99;
background-color: #ffffff;
.load-error {
cursor: pointer;
}
}
}