mirror of
https://github.com/kuaifan/dootask.git
synced 2026-01-12 00:48:11 +00:00
perf: 优化首页加载失败的情况
This commit is contained in:
parent
94b3014051
commit
a32faf1a99
33
resources/assets/js/components/ManageLoad.vue
Normal file
33
resources/assets/js/components/ManageLoad.vue
Normal 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>
|
||||
@ -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>
|
||||
@ -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'});
|
||||
|
||||
3
resources/assets/sass/pages/page-manage.scss
vendored
3
resources/assets/sass/pages/page-manage.scss
vendored
@ -268,6 +268,9 @@
|
||||
bottom: 0;
|
||||
z-index: 99;
|
||||
background-color: #ffffff;
|
||||
.load-error {
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user