vue-apps/com.actionsoft.apps.coe.pal/router/index.js
shangxiaoran@qq.com 9d8f9f0e92 初始化应用
2022-06-28 01:29:37 +08:00

124 lines
3.6 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import Vue from 'vue'
import VueRouter from 'vue-router'
import store from '../store'
Vue.use(VueRouter)
const routes = [
{
path: '/', //页面主路由
name: 'main',
component: () => import ('@/views/Main.vue'),
children: [
{// 资产库主页
path: '/workspace',
name: 'workspace',
component: () => import('../views/workspace/Workspace')
},
{// 用户无任何小组情况下的显示及小组创建
path: '/cooperationCreate',
name: 'cooperationCreate',
component: () => import('../views/cooperation/CooperationCreate')
},
{
path: '/repository',
name: 'repository',// 模型
component: () => import('../views/repository/Repository')
},
{
path: '/manage',
name: '管理中心',
component: () => import('../views/manage/Manage'),
children: [
{
path: '/workspaceManage',
name: '资产库管理',
component: () => import('../views/workspace/WorkspaceManage')
},
{
path: '/cooperationUpdate',
name: 'PAL小组更新(管理)',
component: () => import('../views/cooperation/CooperationUpdate')
},
{
path: '/palUser',
name: 'PAL用户',
component: () => import('../views/user/User')
},
{
path: '/bpmOrg',
name: 'BPM组织架构',
component: () => import('../views/user/BPMOrg')
},
{
path: '/mappingManagement_correlated',
name: 'mappingManagement_correlated',
component: () => import('../views/mappingManagement/MappingManagement')
},
{
path: '/mappingManagement_palNotCorrelated',
name: 'mappingManagement_palNotCorrelated',
component: () => import('../views/mappingManagement/MappingManagement')
},
{
path: '/mappingManagement_bpmNotCorrelated',
name: 'mappingManagement_bpmNotCorrelated',
component: () => import('../views/mappingManagement/MappingManagement')
},
{
path: '/themeStyle',
component: () => import('../views/portal/ThemeStyle')
},
{
path: '/commonRepository',
component: () => import('../views/portal/CommonRepository')
},
{
path: '/userGroup',
component: () => import('../views/portal/UserGroup')
}
]
}
]
},
{
path: '/devGetSession', //开发时获取session作用
name: 'devGetSession',
component: () => import('../views/DevGetSession.vue')
}
]
const router = new VueRouter({
routes
})
/**
*
* to 表示将要跳转到的组件 (目标组件)
* console.log(from); //(源组件)
* next();
* next 是一个函数
* next() 进入下一个组件的钩子函数
* next(false) 阻止跳转 中断导航
* next("/login") 进入指定的组件的钩子函数
*/
// 路由守卫
router.beforeEach((to, from, next) => {
if (production === false && store.state.sessionId == null && to.path != "/devGetSession") {
//进入一个路由获取session获取session后再进入主入口
next("/devGetSession");
} else {
//跳转前设置title
//window.document.title = to.meta.title;
next();
}
//to.matched.some(res=>{res.meta.isLogin}) 能够获取路由配置的参数
});
//跳转后设置scroll为原点
router.afterEach((to, from, next) => {
window.scrollTo(0, 0);
});
export default router