From 71bba5b60a66a2132d5364d4994427b45ffb8e74 Mon Sep 17 00:00:00 2001 From: X1627315083 <1627315083@qq.com> Date: Mon, 19 Feb 2024 09:48:03 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=85=B3=E9=97=AD=E8=80=81=E7=89=88history?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/router/index.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/router/index.ts b/src/router/index.ts index 682b3c52..5c5646c6 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -36,11 +36,11 @@ const routes: Array = [ name: 'history', component: _import('HistoryPage') }, - { - path: '/oldHistory', - name: 'oldHistory', - component: _import('OldHistoryPage') - }, + // { + // path: '/oldHistory', + // name: 'oldHistory', + // component: _import('OldHistoryPage') + // }, { path: '/library', name: 'library', From 0d85fd74e0e853ca7113a946ac413b44d5d0d4a1 Mon Sep 17 00:00:00 2001 From: X1627315083 <1627315083@qq.com> Date: Mon, 19 Feb 2024 10:33:54 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E6=B7=BB=E5=8A=A0404=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/router/index.ts | 46 +++++++++++++++------ src/views/404.vue | 90 +++++++++++++++++++++++++++++++++++++++++ src/views/LoginPage.vue | 2 +- 3 files changed, 125 insertions(+), 13 deletions(-) create mode 100644 src/views/404.vue diff --git a/src/router/index.ts b/src/router/index.ts index 5c5646c6..2c6d0eb3 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -1,7 +1,7 @@ import { createRouter, createWebHistory, RouteRecordRaw, createWebHashHistory } from 'vue-router' import { defineAsyncComponent } from 'vue' -import {getBrowserInfo,murmur} from '@/tool/util' -import { getCookie,setCookie } from "@/tool/cookie"; +import { getBrowserInfo, murmur } from '@/tool/util' +import { getCookie, setCookie } from "@/tool/cookie"; const _import = (path: string) => defineAsyncComponent(() => import(`../views/${path}.vue`)); const routes: Array = [ @@ -36,7 +36,7 @@ const routes: Array = [ name: 'history', component: _import('HistoryPage') }, - // { + // {//老版本history // path: '/oldHistory', // name: 'oldHistory', // component: _import('OldHistoryPage') @@ -56,6 +56,11 @@ const routes: Array = [ name: 'setIdentification', component: _import('setIdentification') }, + { + path: '/404', + name: '404', + component: _import('404') + }, ] const router = createRouter({ @@ -64,28 +69,45 @@ const router = createRouter({ routes }) router.beforeEach((to, from, next) => { -// 系统维护 + // 系统维护 // const toName = to.name === 'upgrade'; // if (toName) { // next(); // } else { // next({ name: 'upgrade' }); // } - + // 检查路由是否存在 // 机房用户 - let murmurStr:any = localStorage.getItem('murmurStr') - let getIsMurmur:any = getCookie("isMurmur") + let murmurStr: any = localStorage.getItem('murmurStr') + let getIsMurmur: any = getCookie("isMurmur") let token = getCookie("token"); let isMurmur = JSON.parse(getIsMurmur) - if(isMurmur&& murmurStr && token){ - const toName = to.name === 'login'; - if (toName) { - next({ name: 'home' }); + + const routeExists = router.getRoutes().some(({ name }) =>{ + if(name){ + return name === to.name + }else{ + return false + } + }); + if (routeExists) { + if (isMurmur && murmurStr && token) { + const toName = to.name === 'login'; + if (toName) { + next({ name: 'home' }); + } else { + next(); + } } else { + // 如果页面存在,正常跳转 next(); } - }else{ next(); + } else { + // 如果页面不存在,可以跳转到404页面或者其他页面 + next('/404'); } + + }); export default router diff --git a/src/views/404.vue b/src/views/404.vue new file mode 100644 index 00000000..b6b61de8 --- /dev/null +++ b/src/views/404.vue @@ -0,0 +1,90 @@ + + + + diff --git a/src/views/LoginPage.vue b/src/views/LoginPage.vue index 1071310d..b0e959f4 100644 --- a/src/views/LoginPage.vue +++ b/src/views/LoginPage.vue @@ -219,7 +219,7 @@