Selaa lähdekoodia

增加permission

秦鹏 3 vuotta sitten
vanhempi
commit
9e3d031481
2 muutettua tiedostoa jossa 106 lisäystä ja 54 poistoa
  1. 35 54
      src/permission.js
  2. 71 0
      src/permission1.js

+ 35 - 54
src/permission.js

@@ -5,67 +5,48 @@ import NProgress from 'nprogress' // progress bar
 import 'nprogress/nprogress.css' // progress bar style
 import { getToken } from '@/utils/auth' // get token from cookie
 import getPageTitle from '@/utils/get-page-title'
-import Cookies from 'js-cookie';
 
 NProgress.configure({ showSpinner: false }) // NProgress Configuration
 
 const whiteList = ['/login'] // no redirect whitelist
 
-router.beforeEach(async(to, from, next) => {
-    // start progress bar
-    NProgress.start()
-        // set page title
-    document.title = getPageTitle(to.meta.title)
-        //next();
-    NProgress.done()
-    const hasToken = getToken();
-    const jId = Cookies.get('JSESSSIONID');
-    if (hasToken) {
-        if (!jId) {
-            store.dispatch('user/setJsessionId').then(res => {
-                if (to.path === '/login') {
-                    // if is logged in, redirect to the home page
-                    next({ path: '/' })
-                    NProgress.done()
-                } else {
-                    try {
-                        next()
-                    } catch (error) {
-                        Message.error(error || 'Has Error')
-                        next(`/login?redirect=${to.path}`)
-                        NProgress.done()
-                    }
-                }
-            })
-        } else {
-            if (to.path === '/login') {
-                // if is logged in, redirect to the home page
-                next({ path: '/' })
-                NProgress.done()
-            } else {
-                try {
-                    next()
-                } catch (error) {
-                    Message.error(error || 'Has Error')
-                    next(`/login?redirect=${to.path}`)
-                    NProgress.done()
-                }
-            }
-        }
+router.beforeEach(async (to, from, next) => {
+  // start progress bar
+  NProgress.start()
+  // set page title
+  document.title = getPageTitle(to.meta.title)
+  next();
+  NProgress.done()
+  const hasToken = getToken()
+
+  if (hasToken) {
+    if (to.path === '/login') {
+      // if is logged in, redirect to the home page
+      next({ path: '/' })
+      NProgress.done()
+    } else {
+      try {
+        next()
+      } catch (error) {
+        Message.error(error || 'Has Error')
+        next(`/login?redirect=${to.path}`)
+        NProgress.done()
+      }
+    }
+  } else {
+    /* has no token*/
+    if (whiteList.indexOf(to.path) !== -1) {
+      // in the free login whitelist, go directly
+      next()
     } else {
-        /* has no token*/
-        if (whiteList.indexOf(to.path) !== -1) {
-            // in the free login whitelist, go directly
-            next()
-        } else {
-            // other pages that do not have permission to access are redirected to the login page.
-            next(`/login?redirect=${to.path}`)
-            NProgress.done()
-        }
+      // other pages that do not have permission to access are redirected to the login page.
+      next(`/login?redirect=${to.path}`)
+      NProgress.done()
     }
+  }
 })
 
 router.afterEach(() => {
-    // finish progress bar
-    NProgress.done()
-})
+  // finish progress bar
+  NProgress.done()
+})

+ 71 - 0
src/permission1.js

@@ -0,0 +1,71 @@
+import router from './router'
+import store from './store'
+import { Message } from 'element-ui'
+import NProgress from 'nprogress' // progress bar
+import 'nprogress/nprogress.css' // progress bar style
+import { getToken } from '@/utils/auth' // get token from cookie
+import getPageTitle from '@/utils/get-page-title'
+import Cookies from 'js-cookie';
+
+NProgress.configure({ showSpinner: false }) // NProgress Configuration
+
+const whiteList = ['/login'] // no redirect whitelist
+
+router.beforeEach(async(to, from, next) => {
+    // start progress bar
+    NProgress.start()
+        // set page title
+    document.title = getPageTitle(to.meta.title)
+        //next();
+    NProgress.done()
+    const hasToken = getToken();
+    const jId = Cookies.get('JSESSSIONID');
+    if (hasToken) {
+        if (!jId) {
+            store.dispatch('user/setJsessionId').then(res => {
+                if (to.path === '/login') {
+                    // if is logged in, redirect to the home page
+                    next({ path: '/' })
+                    NProgress.done()
+                } else {
+                    try {
+                        next()
+                    } catch (error) {
+                        Message.error(error || 'Has Error')
+                        next(`/login?redirect=${to.path}`)
+                        NProgress.done()
+                    }
+                }
+            })
+        } else {
+            if (to.path === '/login') {
+                // if is logged in, redirect to the home page
+                next({ path: '/' })
+                NProgress.done()
+            } else {
+                try {
+                    next()
+                } catch (error) {
+                    Message.error(error || 'Has Error')
+                    next(`/login?redirect=${to.path}`)
+                    NProgress.done()
+                }
+            }
+        }
+    } else {
+        /* has no token*/
+        if (whiteList.indexOf(to.path) !== -1) {
+            // in the free login whitelist, go directly
+            next()
+        } else {
+            // other pages that do not have permission to access are redirected to the login page.
+            next(`/login?redirect=${to.path}`)
+            NProgress.done()
+        }
+    }
+})
+
+router.afterEach(() => {
+    // finish progress bar
+    NProgress.done()
+})