import Vue from 'vue' import Router from 'vue-router' import constants from '../common/constants' Vue.use(Router) const router = new Router({ mode: 'history', routes: [{ path: '/', name: 'login', component: reslove => require(['@/views/login'], reslove) }, { path: '/index', name: 'index', component: reslove => require(['@/views/main_web/index'], reslove) }, { path: '/projnotice', name: 'projnotice', component: reslove => require(['@/views/main_web/projnotice'], reslove) }, { path: '/email', name: 'email', component: reslove => require(['@/views/components_web/head/email'], reslove) }, { path: '/workspace', name: 'workspace', component: reslove => require(['@/views/main_web/workspace'], reslove) }, { path: '/project', name: 'project', component: reslove => require(['@/views/main_web/project'], reslove) }, { path: '/recycle', name: 'recycle', component: reslove => require(['@/views/main_web/recycle'], reslove) }, { path: '/search', name: 'search', component: reslove => require(['@/views/main_web/search'], reslove) }, { path: '/cloud', name: 'cloud', component: reslove => require(['@/views/main_web/cloud'], reslove) }, { path: '/cloudrecycle', name: 'cloudrecycle', component: reslove => require(['@/views/main_web/cloudrecycle'], reslove) }, { path: '/cloudsource', name: 'cloudsource', component: reslove => require(['@/views/main_web/cloudsource'], reslove) }, // 探索者后台 { path: '/company', name: 'company', component: reslove => require(['@/views/manage_company/message'], reslove) }, { path: '/company/message', name: 'company_message', component: reslove => require(['@/views/manage_company/message_detail'], reslove) }, { path: '/company/user', name: 'company_user', component: reslove => require(['@/views/manage_company/user'], reslove) }, { path: '/company/project', name: 'company_project', component: reslove => require(['@/views/manage_company/project'], reslove) }, { path: '/company/template', name: 'company_template', component: reslove => require(['@/views/manage_company/template'], reslove) }, { path: '/company/template/detail', name: 'company_template_detail', component: reslove => require(['@/views/manage_company/template_detail'], reslove) }, { path: '/company/template/market', name: 'company_template_market', component: reslove => require(['@/views/manage_company/template_market'], reslove) }, { path: '/company/setting', name: 'company_setting', component: reslove => require(['@/views/manage_company/setting'], reslove) }, { path: '/company/app', name: 'company_app', component: reslove => require(['@/views/manage_company/app'], reslove) }, // 探索者总后台 { path: '/system', name: 'system', component: reslove => require(['@/views/manage_system/index'], reslove) }, { path: '/system/template', name: 'system_template', component: reslove => require(['@/views/manage_system/template'], reslove) }, { path: '/system/runmanage', name: 'system_runmanage', component: reslove => require(['@/views/manage_system/runmanage'], reslove) }, { path: '/system/template/matrix', name: 'system_template_matrix', component: reslove => require(['@/views/manage_system/template_matrix'], reslove) }, { path: '/system/template/mind', name: 'system_template_mind', component: reslove => require(['@/views/manage_system/template_mind'], reslove) }, { path: '/system/template/tempfile', name: 'system_template_file', component: reslove => require(['@/views/manage_system/template_file'], reslove) }, { path: '/system/appcenter', name: 'system_appcenter', component: reslove => require(['@/views/manage_system/appcenter'], reslove) }, { path: '/system/appinfo', name: 'system_appinfo', component: reslove => require(['@/views/manage_system/appinfo'], reslove) }, { path: '/system/setting', name: 'system_setting', component: reslove => require(['@/views/manage_system/setting'], reslove) }, // 页面未找到时提示(这个页面要放在最后) { path: '*', name: 'notfound', component: reslove => require(['@/views/components_web/notFound/notFound'], reslove) } ] }) // 添加路由验证 router.beforeEach((to, from, next) => { if (to.path === '/') { next() } else { if (!sessionStorage.getItem('userId')) { next({ path: '/' }) } else { next() } } }) // 导航后置守卫,可以在确定导航到目标页面时再更改title router.afterEach((to, from) => { window.document.title = constants[to.name] }) export default router