From 50f52beb0ed100105166f62027cd0b15e6b596dc Mon Sep 17 00:00:00 2001 From: Surpriseplus <845948745@qq.com> Date: 星期六, 12 十一月 2022 15:02:01 +0800 Subject: [PATCH] 重新 --- src/router/index.js | 91 ++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 88 insertions(+), 3 deletions(-) diff --git a/src/router/index.js b/src/router/index.js index 01e68dd..74467bf 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -1,10 +1,12 @@ import Vue from 'vue'; import VueRouter from 'vue-router'; +import { getToken } from '@/utils/auth'; // get token from cookie import Home from '../views/Home.vue'; import login from '../components/login'; import Synthesis from '../views/Synthesis/index.vue'; //缁煎悎灞曠ず import Thematic from '../views/Thematic/index.vue'; //涓撻鍦板浘 import Archive from '../views/Archive/index.vue'; //璧勬枡棣� +import ExportMap from '../views/exportMap/index.vue'; import menuSettings from '@/views/maintenance/menuSettings.vue'; //鑿滃崟璁剧疆 import rests from '@/views/maintenance/rests.vue'; //鍏朵粬 import authorityManagement from '@/views/maintenance/authorityManagement.vue'; //鏉冮檺绠$悊 @@ -35,20 +37,33 @@ import roleManage from '../views/userManage/roleManage.vue'; // 鐢ㄦ埛绠$悊妯″潡 import groupManage from '../views/userManage/groupManage.vue'; // 鐢ㄦ埛绠$悊妯″潡 import authorityManage from '@/views/userManage/authorityManage.vue'; //鐢ㄦ埛绠$悊-鏉冮檺绠$悊 +import resourceManage from '@/views/userManage/resourceManage.vue'; //鐢ㄦ埛绠$悊-璧勬簮绠$悊 +import userRoleAuthorization from '@/views/AuthorizationManagement/userRoleAuthorization.vue'; //绯荤粺绠$悊-鐢ㄦ埛瑙掕壊鎺堟潈 + +import menuRoleAuthorization from '@/views/AuthorizationManagement/menuRoleAuthorization.vue'; //绯荤粺绠$悊-鑿滃崟鏉冮檺鎺堟潈 +import roleResAuthorization from '@/views/AuthorizationManagement/roleResAuthorization.vue'; //绯荤粺绠$悊-瑙掕壊璧勬簮鎺堟潈 +import roleMenuAuthorization from '@/views/AuthorizationManagement/roleMenuAuthorization.vue'; //绯荤粺绠$悊-瑙掕壊鑿滃崟鎺堟潈 + +const originalPush = VueRouter.prototype.push; + +VueRouter.prototype.push = function push(location) { + return originalPush.call(this, location).catch((err) => err); +}; // 缇ょ粍绠$悊 Vue.use(VueRouter); const routes = [ { - path: '/', + path: '/login', name: 'login', component: login, }, { - path: '/Home', + path: '/', name: 'Home', component: Home, + redirect: '/Synthesis', children: [ { path: '/Synthesis', @@ -56,6 +71,15 @@ component: Synthesis, meta: { title: '缁煎悎灞曠ず', + requireAuth: true, // 鏍囪瘑璇ヨ矾鐢辨槸鍚﹂渶瑕佺櫥褰� + }, + }, + { + path: '/ExportMap', + name: 'ExportMap', + component: ExportMap, + meta: { + title: '鍦ㄧ嚎鍒跺浘', requireAuth: true, // 鏍囪瘑璇ヨ矾鐢辨槸鍚﹂渶瑕佺櫥褰� }, }, @@ -326,6 +350,51 @@ requireAuth: true, // 鏍囪瘑璇ヨ矾鐢辨槸鍚﹂渶瑕佺櫥褰� }, }, + { + path: '/resourceManage', + component: resourceManage, + name: 'resourceManage', + meta: { + title: '璧勬簮绠$悊', + requireAuth: true, // 鏍囪瘑璇ヨ矾鐢辨槸鍚﹂渶瑕佺櫥褰� + }, + }, + { + path: '/userRoleAuthorization', + component: userRoleAuthorization, + name: 'userRoleAuthorization', + meta: { + title: '鐢ㄦ埛瑙掕壊鎺堟潈', + requireAuth: true, // 鏍囪瘑璇ヨ矾鐢辨槸鍚﹂渶瑕佺櫥褰� + }, + }, + { + path: '/menuRoleAuthorization', + component: menuRoleAuthorization, + name: 'menuRoleAuthorization', + meta: { + title: '鑿滃崟鏉冮檺鎺堟潈', + requireAuth: true, // 鏍囪瘑璇ヨ矾鐢辨槸鍚﹂渶瑕佺櫥褰� + }, + }, + { + path: '/roleResAuthorization', + component: roleResAuthorization, + name: 'roleResAuthorization', + meta: { + title: '鑿滃崟鏉冮檺鎺堟潈', + requireAuth: true, // 鏍囪瘑璇ヨ矾鐢辨槸鍚﹂渶瑕佺櫥褰� + }, + }, + { + path: '/roleMenuAuthorization', + component: roleMenuAuthorization, + name: 'roleMenuAuthorization', + meta: { + title: '鑿滃崟鏉冮檺鎺堟潈', + requireAuth: true, // 鏍囪瘑璇ヨ矾鐢辨槸鍚﹂渶瑕佺櫥褰� + }, + }, ], }, ]; @@ -333,5 +402,21 @@ const router = new VueRouter({ routes, }); - +//璺敱瀹堝崼 +router.beforeEach((to, from, next) => { + next(); + if (to.matched.some((auth) => auth.meta.requireAuth)) { + // 鑾峰彇token + let token = getToken(); + if (token) { + next(); + } else { + next({ + path: '/login', + }); + } + } else { + next(); + } +}); export default router; -- Gitblit v1.9.3