LabEx/web/src/router/index.js
KaiyuanOSG c28867e3e4 2023.6.23
1. 完结撒花~~
2023-06-23 14:59:47 +08:00

97 lines
2.9 KiB
JavaScript
Executable File

import {createRouter, createWebHashHistory} from 'vue-router'
const routes = [
{
path: '/',
redirect: '/Login'
},
{
path: '/Home',
name: 'Home',
redirect: '/BorrowRoom',
component: () => import('../views/Home.vue'),
//---------------------教室借用相关-----------------------------
children: [
{
path: '/BorrowRoom',
name: 'BorrowRoom',
component: () => import('../views/BorrowRoom/BorrowRoom.vue')
},
{
path: '/RecordList',
name: 'RecordList',
component: () => import('../views/BorrowRoom/RecordList.vue')
},
//---------------------管理员部分-----------------------------
{
path: '/Admit',
name: 'Admit',
component: () => import('../views/Admin/Admit.vue')
},
{
path: '/UserManage',
name: 'UserManage',
component: () => import('../views/Admin/UserManage.vue')
},
{
path: '/RoomTimeAndReasonManage',
name: 'RoomTimeAndReasonManage',
component: () => import('../views/Admin/RoomAndTimeManage.vue')
},
{
path: '/Personal',
name: 'Personal',
component: () => import('../views/Personal.vue')
},
//---------------------教师--------------------------------------------------------------------------
{
path: '/ApplyExperiment',
name: 'ApplyExperiment',
component: () => import('../views/ApplyExperiment/ApplyExperiment.vue')
}, {
path: '/ExperimentCheck',
name: 'ExperimentCheck',
component: () => import('../views/ApplyExperiment/ExperimentCheck.vue')
},
{
path: '/Sub',
name: 'Sub',
component: () => import('../views/Student/Sub.vue')
}
]
},
//---------------------用户/Admin--------------------------------------------------------------------
{
path: '/Login',
name: 'Login',
component: () => import('../views/Login.vue')
},
]
const router = createRouter({
history: createWebHashHistory(),
routes
})
//导航守卫
//开启前先做白名单
router.beforeEach((to, from, next) => {
//页面拦截
if (to.name !== 'Login') {
let role = window.sessionStorage.getItem("role");
// let token = window.sessionStorage.getItem("token");
if (!role) {
// return next({ name: 'Login' });
}
return next();
} else {
return next();
}
})
export default router