From a2cf1dafa47139ef92135376db24ece72d2b51d2 Mon Sep 17 00:00:00 2001 From: 陈泽平 <chenzeping> Date: 星期一, 17 五月 2021 17:19:41 +0800 Subject: [PATCH] 管线分析 --- src/router/index.js | 36 +++++++++++++++++++++++++++++++----- 1 files changed, 31 insertions(+), 5 deletions(-) diff --git a/src/router/index.js b/src/router/index.js index 99f1696..b95bcd3 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -1,13 +1,15 @@ import Vue from 'vue' import Router from 'vue-router' import { routes } from './routes' +import { getToken } from '@/utils/navigation' import 'nprogress/nprogress.css' const appConfig = require('@/app.config') -const { routeMode } = appConfig - +const { homeRouterName, loginRouteName, routeMode } = appConfig +const LOGIN_PAGE_ROUTE_NAME = loginRouteName Vue.use(Router) +const baseName = process.env.NODE_ENV === 'production' ? `/${appConfig.projectName}/` : '/' const router = new Router({ - base: appConfig.projectName, + base: baseName, mode: routeMode || 'hash', routes: routes }) @@ -16,12 +18,36 @@ cancel() }) Vue.prototype.$cancels = [] + const token = getToken() + if (!token && to.name !== LOGIN_PAGE_ROUTE_NAME) { + // 鏈櫥褰曚笖瑕佽烦杞殑椤甸潰涓嶆槸鐧诲綍椤� + next({ + name: LOGIN_PAGE_ROUTE_NAME // 璺宠浆鍒扮櫥褰曢〉 + }) + } else if (!token && to.name === LOGIN_PAGE_ROUTE_NAME) { + // 鏈櫥闄嗕笖瑕佽烦杞殑椤甸潰鏄櫥褰曢〉 + next() // 璺宠浆 + } else if (token && to.name === LOGIN_PAGE_ROUTE_NAME) { + // 宸茬櫥褰曚笖瑕佽烦杞殑椤甸潰鏄櫥褰曢〉 + // next({ + // name: homeRouterName // 璺宠浆鍒癶omeName椤� + // }) + console.log(homeRouterName) + next() + } else if (!token) { + // next({ + // name: LOGIN_PAGE_ROUTE_NAME // 璺宠浆鍒扮櫥褰曢〉 + // }) + console.log(LOGIN_PAGE_ROUTE_NAME) + next() + } else { + next() + } // 涓嶉渶瑕佺櫥褰曡璇佺殑璺敱 if (Object.hasOwnProperty.call(to.meta, 'noLoginIdentify') && to.meta.noLoginIdentify) { next() - return } - next() + // next() }) router.beforeResolve((to, from, next) => { next() -- Gitblit v1.8.0