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