From b38eb035c3782025257d9b582e5a0db45f7881b8 Mon Sep 17 00:00:00 2001
From: wangting <675591594@qq.com>
Date: 星期二, 02 四月 2024 10:39:16 +0800
Subject: [PATCH] 菜单跳转

---
 Source/ProjectWeb/src/permission.js |  153 +++++++++++++++++++++++++-------------------------
 1 files changed, 77 insertions(+), 76 deletions(-)

diff --git a/Source/ProjectWeb/src/permission.js b/Source/ProjectWeb/src/permission.js
index 8d64cd5..0b8137a 100644
--- a/Source/ProjectWeb/src/permission.js
+++ b/Source/ProjectWeb/src/permission.js
@@ -1,76 +1,77 @@
-// /**
-//  * 鍏ㄧ珯鏉冮檺閰嶇疆
-//  *
-//  */
-// import router from './router/router'
-// import store from './store'
-// import {validatenull} from '@/util/validate'
-// import {getToken} from '@/util/auth'
-// import NProgress from 'nprogress' // progress bar
-// import 'nprogress/nprogress.css' // progress bar style
-// NProgress.configure({showSpinner: false});
-// const lockPage = store.getters.website.lockPage; //閿佸睆椤�
-// router.beforeEach((to, from, next) => {
-//   const meta = to.meta || {};
-//   const isMenu = meta.menu === undefined ? to.query.menu : meta.menu;
-//   store.commit('SET_IS_MENU', isMenu === undefined);
-//   if (getToken()) {
-//     if (store.getters.isLock && to.path !== lockPage) { //濡傛灉绯荤粺婵�娲婚攣灞忥紝鍏ㄩ儴璺宠浆鍒伴攣灞忛〉
-//       next({path: lockPage})
-//     } else if (to.path === '/login') { //濡傛灉鐧诲綍鎴愬姛璁块棶鐧诲綍椤佃烦杞埌涓婚〉
-//       next({path: '/'})
-//     } else {
-//       //濡傛灉鐢ㄦ埛淇℃伅涓虹┖鍒欒幏鍙栫敤鎴蜂俊鎭紝鑾峰彇鐢ㄦ埛淇℃伅澶辫触锛岃烦杞埌鐧诲綍椤�
-//       if (store.getters.token.length === 0) {
-//         store.dispatch('FedLogOut').then(() => {
-//           next({path: '/login'})
-//         })
-//       } else {
-//         const value = to.query.src || to.fullPath;
-//         const label = to.query.name || to.name;
-//         const meta = to.meta || router.$avueRouter.meta || {};
-//         const i18n = to.query.i18n;
-//         if (to.query.target) {
-//           window.open(value)
-//         } else if (meta.isTab !== false && !validatenull(value) && !validatenull(label)) {
-//           store.commit('ADD_TAG', {
-//             label: label,
-//             value: value,
-//             params: to.params,
-//             query: to.query,
-//             meta: (() => {
-//               if (!i18n) {
-//                 return meta
-//               }
-//               return {
-//                 i18n: i18n
-//               }
-//             })(),
-//             group: router.$avueRouter.group || []
-//           });
-//         }
-//         next()
-//       }
-//     }
-//   } else {
-//     //鍒ゆ柇鏄惁闇�瑕佽璇侊紝娌℃湁鐧诲綍璁块棶鍘荤櫥褰曢〉
-//     if (meta.isAuth === false) {
-//       next()
-//     } else {
-//       next('/login')
-//     }
-//   }
-// })
-//
-// router.afterEach(() => {
-//   NProgress.done();
-//   let title = store.getters.tag.label;
-//   let i18n = store.getters.tag.meta.i18n;
-//   title = router.$avueRouter.generateTitle(title, i18n);
-//   //鍒ゆ柇鐧诲綍椤电殑鎯呭喌
-//   if (router.history.current.fullPath === "/login") {
-//     title = "鐧诲綍";
-//   }
-//   //鏍规嵁褰撳墠鐨勬爣绛句篃鑾峰彇label鐨勫�煎姩鎬佽缃祻瑙堝櫒鏍囬
-//   router.$avueRouter.setTitle(title);
-// });
+ /**
+  * 鍏ㄧ珯鏉冮檺閰嶇疆
+  *
+  */
+ import router from './router/router'
+ import store from './store'
+ import {validatenull} from '@/util/validate'
+ import {getToken} from '@/util/auth'
+ import NProgress from 'nprogress' // progress bar
+ import 'nprogress/nprogress.css' // progress bar style
+ NProgress.configure({showSpinner: false});
+ const lockPage = store.getters.website.lockPage; //閿佸睆椤�
+ router.beforeEach((to, from, next) => {
+   debugger;
+   const meta = to.meta || {};
+   const isMenu = meta.menu === undefined ? to.query.menu : meta.menu;
+   store.commit('SET_IS_MENU', isMenu === undefined);
+   if (getToken()) {
+     if (store.getters.isLock && to.path !== lockPage) { //濡傛灉绯荤粺婵�娲婚攣灞忥紝鍏ㄩ儴璺宠浆鍒伴攣灞忛〉
+       next({path: lockPage})
+     } else if (to.path === '/login') { //濡傛灉鐧诲綍鎴愬姛璁块棶鐧诲綍椤佃烦杞埌涓婚〉
+       next({path: '/'})
+     } else {
+       //濡傛灉鐢ㄦ埛淇℃伅涓虹┖鍒欒幏鍙栫敤鎴蜂俊鎭紝鑾峰彇鐢ㄦ埛淇℃伅澶辫触锛岃烦杞埌鐧诲綍椤�
+       if (store.getters.token.length === 0) {
+         store.dispatch('FedLogOut').then(() => {
+           next({path: '/login'})
+         })
+       } else {
+         const value = to.query.src || to.fullPath;
+         const label = to.query.name || to.name;
+         const meta = to.meta || router.$avueRouter.meta || {};
+         const i18n = to.query.i18n;
+         if (to.query.target) {
+           window.open(value)
+         } else if (meta.isTab !== false && !validatenull(value) && !validatenull(label)) {
+           store.commit('ADD_TAG', {
+             label: label,
+             value: value,
+             params: to.params,
+             query: to.query,
+             meta: (() => {
+               if (!i18n) {
+                 return meta
+               }
+               return {
+                 i18n: i18n
+               }
+             })(),
+             group: router.$avueRouter.group || []
+           });
+         }
+         next()
+       }
+     }
+   } else {
+     //鍒ゆ柇鏄惁闇�瑕佽璇侊紝娌℃湁鐧诲綍璁块棶鍘荤櫥褰曢〉
+     if (meta.isAuth === false) {
+       next()
+     } else {
+       next('/login')
+     }
+   }
+ })
+
+ router.afterEach(() => {
+   NProgress.done();
+   let title = store.getters.tag.label;
+   let i18n = store.getters.tag.meta.i18n;
+   title = router.$avueRouter.generateTitle(title, i18n);
+   //鍒ゆ柇鐧诲綍椤电殑鎯呭喌
+   if (router.history.current.fullPath === "/login") {
+     title = "鐧诲綍";
+   }
+   //鏍规嵁褰撳墠鐨勬爣绛句篃鑾峰彇label鐨勫�煎姩鎬佽缃祻瑙堝櫒鏍囬
+   router.$avueRouter.setTitle(title);
+ });

--
Gitblit v1.9.3