Former-commit-id: 0bb638fbadf618f36c2eb30e69b5336a43dc9d29
This commit is contained in:
liyang
2018-07-25 09:51:16 +08:00
parent 4610009c76
commit e31f16dbfa
132 changed files with 0 additions and 20623 deletions
-47
View File
@@ -1,47 +0,0 @@
import Vue from 'vue';
import VueRouter from 'vue-router';
import Cookies from 'js-cookie';
import util from '@/libs/util';
// 路由数据
import routes from './routes';
Vue.use(VueRouter);
const router = new VueRouter({ routes });
/**
* 路由拦截
* 权限验证
*/
router.beforeEach((to, from, next) => {
// 验证当前路由所有的匹配中是否需要有登陆验证的
if (to.matched.some(r => r.meta.requiresAuth)) {
// 这里暂时将cookie里是否存有token作为验证是否登陆的条件
// 请根据自身功能需要修改
if (Cookies.get('token')) {
next();
} else {
// 没有登陆的时候跳转到登陆界面
next({
name: 'login',
});
}
} else {
// 不需要身份校验 直接通过
next();
}
});
router.afterEach((to) => {
// 需要的信息
const { app } = router;
const { name, params, query } = to;
// 多页控制 打开新的页面
util.openNewPage(app, name, params, query);
// 更改标题
util.title(to.meta.title);
});
export default router;
-112
View File
@@ -1,112 +0,0 @@
const meta = { requiresAuth: true };
/**
* 在主框架内显示
*/
const frameIn = [
//
{
path: '/',
redirect: { name: 'index' },
component: () => import('@/components/core/d2-layout-main'),
children: [
{
path: 'index',
name: 'index',
meta,
component: () => import('@/pages/d2admin/index'),
},
],
},
{
path: '/core/setting',
name: 'core-setting',
meta,
redirect: { name: 'core-setting-index' },
component: () => import('@/components/core/d2-layout-main'),
children: (pre => [
{
path: 'index', name: `${pre}index`, component: () => import('@/pages/d2admin/setting/index'), meta: { ...meta, title: '设置首页' },
},
{
path: 'releases', name: `${pre}releases`, component: () => import('@/pages/d2admin/setting/releases'), meta: { ...meta, title: '版本' },
},
])('core-setting-'),
},
{
path: '/business/class1',
name: 'business-class1',
meta,
redirect: { name: 'business-class1-index' },
component: () => import('@/components/core/d2-layout-main'),
children: (pre => [
{
path: 'index', name: `${pre}index`, component: () => import('@/pages/business/class1/index'), meta: { ...meta, title: '功能 1' },
},
{
path: 'page1', name: `${pre}page1`, component: () => import('@/pages/business/class1/page1'), meta: { ...meta, title: '功能 1 页面 1' },
},
{
path: 'page2', name: `${pre}page2`, component: () => import('@/pages/business/class1/page2'), meta: { ...meta, title: '功能 1 页面 2' },
},
])('business-class1-'),
},
{
path: '/business/class2',
name: 'business-class2',
meta,
redirect: { name: 'business-class2-index' },
component: () => import('@/components/core/d2-layout-main'),
children: (pre => [
{
path: 'index', name: `${pre}index`, component: () => import('@/pages/business/class2/index'), meta: { ...meta, title: '功能 2' },
},
{
path: 'class2-1/page1', name: `${pre}class2-1-page1`, component: () => import('@/pages/business/class2/class2-1/page1'), meta: { ...meta, title: '功能 2-1 页面 1' },
},
{
path: 'class2-1/page2', name: `${pre}class2-1-page2`, component: () => import('@/pages/business/class2/class2-1/page2'), meta: { ...meta, title: '功能 2-1 页面 2' },
},
{
path: 'page1', name: `${pre}page1`, component: () => import('@/pages/business/class2/page1'), meta: { ...meta, title: '功能 2 页面 1' },
},
{
path: 'page2', name: `${pre}page2`, component: () => import('@/pages/business/class2/page2'), meta: { ...meta, title: '功能 2 页面 2' },
},
])('business-class2-'),
},
];
/**
* 错误页面
*/
const errorPage = [
// 404
{
path: '*',
name: '404',
component: () => import('@/pages/d2admin/404'),
},
];
/**
* 在主框架之外显示
*/
const frameOut = [
// 登陆
{
path: '/login',
name: 'login',
component: () => import('@/pages/d2admin/login'),
},
];
// 导出需要显示菜单的
export const frameInRoutes = frameIn;
// 重新组织后导出
export default [
...frameIn,
...frameOut,
...errorPage,
];