zhanghao 5 meses atrás
pai
commit
0392fbdbcf
2 arquivos alterados com 33 adições e 34 exclusões
  1. 30 31
      src/permission.js
  2. 3 3
      src/router/index.js

+ 30 - 31
src/permission.js

@@ -8,49 +8,48 @@ import { isRelogin } from '@/utils/request'
 
 NProgress.configure({ showSpinner: false })
 
-const whiteList = ['/login', '/auth-redirect', '/bind', '/register','/screen','/pad']
+const whiteList = ['/login', '/auth-redirect', '/bind', '/register','/screen','/pad','/index']
 
 router.beforeEach((to, from, next) => {
   NProgress.start()
-  // if (getToken()) {
-  //   to.meta.title && store.dispatch('settings/setTitle', to.meta.title)
-  //   /* has token*/
-  //   if (to.path === '/login') {
-  //     next({ path: '/' })
-  //     NProgress.done()
-  //   } else {
-  //     if (store.getters.roles.length === 0) {
-  //       isRelogin.show = true
-  //       // 判断当前用户是否已拉取完user_info信息
-  //       store.dispatch('GetInfo').then(() => {
-  //         isRelogin.show = false
-  //         store.dispatch('GenerateRoutes').then(accessRoutes => {
-  //           // 根据roles权限生成可访问的路由表
-  //           router.addRoutes(accessRoutes) // 动态添加可访问路由表
-  //           next({ ...to, replace: true }) // hack方法 确保addRoutes已完成
-  //         })
-  //       }).catch(err => {
-  //           store.dispatch('LogOut').then(() => {
-  //             Message.error(err)
-  //             next({ path: '/' })
-  //           })
-  //         })
-  //     } else {
-  //       next()
-  //     }
-  //   }
-  // } else {
+  if (getToken()) {
+    to.meta.title && store.dispatch('settings/setTitle', to.meta.title)
+    /* has token*/
+    if (to.path === '/login') {
+      next({ path: '/' })
+      NProgress.done()
+    } else {
+      if (store.getters.roles.length === 0) {
+        isRelogin.show = true
+        // 判断当前用户是否已拉取完user_info信息
+        store.dispatch('GetInfo').then(() => {
+          isRelogin.show = false
+          store.dispatch('GenerateRoutes').then(accessRoutes => {
+            // 根据roles权限生成可访问的路由表
+            router.addRoutes(accessRoutes) // 动态添加可访问路由表
+            next({ ...to, replace: true }) // hack方法 确保addRoutes已完成
+          })
+        }).catch(err => {
+          store.dispatch('LogOut').then(() => {
+            Message.error(err)
+            next({ path: '/' })
+          })
+        })
+      } else {
+        next()
+      }
+    }
+  } else {
     // 没有token
     if (whiteList.indexOf(to.path) !== -1) {
       // 在免登录白名单,直接进入
       next()
     } else {
       // next(`/login?redirect=${to.fullPath}`) // 否则全部重定向到登录页
-      //next(`/pad`) // 否则全部重定向到登录页
       next(`/screen`) // 否则全部重定向到登录页
       NProgress.done()
     }
-  // }
+  }
 })
 
 router.afterEach(() => {

+ 3 - 3
src/router/index.js

@@ -98,7 +98,7 @@ export const constantRoutes = [
       }
     ]
   }
-  
+
 ]
 
 // 动态路由,基于用户权限动态去加载
@@ -182,8 +182,8 @@ Router.prototype.push = function push(location) {
 }
 
 export default new Router({
-  base: "/screen",
-  mode: '', // 去掉url中的#
+  base: "",
+  mode: 'history', // 去掉url中的#
   scrollBehavior: () => ({ y: 0 }),
   routes: constantRoutes
 })