add prettier and deep fixed
This commit is contained in:
@@ -1,98 +1,101 @@
|
||||
import Mock from 'mockjs'
|
||||
import { deepClone } from '../../src/utils/index.js'
|
||||
import { asyncRoutes, constantRoutes } from './routes.js'
|
||||
import Mock from "mockjs";
|
||||
import { deepClone } from "../../src/utils/index.js";
|
||||
import { asyncRoutes, constantRoutes } from "./routes.js";
|
||||
|
||||
const routes = deepClone([...constantRoutes, ...asyncRoutes])
|
||||
const routes = deepClone([...constantRoutes, ...asyncRoutes]);
|
||||
|
||||
const roles = [
|
||||
{
|
||||
key: 'admin',
|
||||
name: 'admin',
|
||||
description: 'Super Administrator. Have access to view all pages.',
|
||||
key: "admin",
|
||||
name: "admin",
|
||||
description: "Super Administrator. Have access to view all pages.",
|
||||
routes: routes
|
||||
},
|
||||
{
|
||||
key: 'editor',
|
||||
name: 'editor',
|
||||
description: 'Normal Editor. Can see all pages except permission page',
|
||||
routes: routes.filter(i => i.path !== '/permission')// just a mock
|
||||
key: "editor",
|
||||
name: "editor",
|
||||
description: "Normal Editor. Can see all pages except permission page",
|
||||
routes: routes.filter(i => i.path !== "/permission") // just a mock
|
||||
},
|
||||
{
|
||||
key: 'visitor',
|
||||
name: 'visitor',
|
||||
description: 'Just a visitor. Can only see the home page and the document page',
|
||||
routes: [{
|
||||
path: '',
|
||||
redirect: 'dashboard',
|
||||
children: [
|
||||
{
|
||||
path: 'dashboard',
|
||||
name: 'Dashboard',
|
||||
meta: { title: 'dashboard', icon: 'dashboard' }
|
||||
}
|
||||
]
|
||||
}]
|
||||
key: "visitor",
|
||||
name: "visitor",
|
||||
description:
|
||||
"Just a visitor. Can only see the home page and the document page",
|
||||
routes: [
|
||||
{
|
||||
path: "",
|
||||
redirect: "dashboard",
|
||||
children: [
|
||||
{
|
||||
path: "dashboard",
|
||||
name: "Dashboard",
|
||||
meta: { title: "dashboard", icon: "dashboard" }
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
];
|
||||
|
||||
export default [
|
||||
// mock get all routes form server
|
||||
{
|
||||
url: '/routes',
|
||||
type: 'get',
|
||||
url: "/routes",
|
||||
type: "get",
|
||||
response: _ => {
|
||||
return {
|
||||
code: 20000,
|
||||
data: routes
|
||||
}
|
||||
};
|
||||
}
|
||||
},
|
||||
|
||||
// mock get all roles form server
|
||||
{
|
||||
url: '/roles',
|
||||
type: 'get',
|
||||
url: "/roles",
|
||||
type: "get",
|
||||
response: _ => {
|
||||
return {
|
||||
code: 20000,
|
||||
data: roles
|
||||
}
|
||||
};
|
||||
}
|
||||
},
|
||||
|
||||
// add role
|
||||
{
|
||||
url: '/role',
|
||||
type: 'post',
|
||||
url: "/role",
|
||||
type: "post",
|
||||
response: {
|
||||
code: 20000,
|
||||
data: {
|
||||
key: Mock.mock('@integer(300, 5000)')
|
||||
key: Mock.mock("@integer(300, 5000)")
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
// update role
|
||||
{
|
||||
url: '/role/[A-Za-z0-9]',
|
||||
type: 'put',
|
||||
url: "/role/[A-Za-z0-9]",
|
||||
type: "put",
|
||||
response: {
|
||||
code: 20000,
|
||||
data: {
|
||||
status: 'success'
|
||||
status: "success"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
// delete role
|
||||
{
|
||||
url: '/role/[A-Za-z0-9]',
|
||||
type: 'delete',
|
||||
url: "/role/[A-Za-z0-9]",
|
||||
type: "delete",
|
||||
response: {
|
||||
code: 20000,
|
||||
data: {
|
||||
status: 'success'
|
||||
status: "success"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
];
|
||||
|
@@ -2,524 +2,524 @@
|
||||
|
||||
export const constantRoutes = [
|
||||
{
|
||||
path: '/redirect',
|
||||
component: 'layout/Layout',
|
||||
path: "/redirect",
|
||||
component: "layout/Layout",
|
||||
hidden: true,
|
||||
children: [
|
||||
{
|
||||
path: '/redirect/:path*',
|
||||
component: 'views/redirect/index'
|
||||
path: "/redirect/:path*",
|
||||
component: "views/redirect/index"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
path: '/login',
|
||||
component: 'views/login/index',
|
||||
path: "/login",
|
||||
component: "views/login/index",
|
||||
hidden: true
|
||||
},
|
||||
{
|
||||
path: '/auth-redirect',
|
||||
component: 'views/login/auth-redirect',
|
||||
path: "/auth-redirect",
|
||||
component: "views/login/auth-redirect",
|
||||
hidden: true
|
||||
},
|
||||
{
|
||||
path: '/404',
|
||||
component: 'views/error-page/404',
|
||||
path: "/404",
|
||||
component: "views/error-page/404",
|
||||
hidden: true
|
||||
},
|
||||
{
|
||||
path: '/401',
|
||||
component: 'views/error-page/401',
|
||||
path: "/401",
|
||||
component: "views/error-page/401",
|
||||
hidden: true
|
||||
},
|
||||
{
|
||||
path: '',
|
||||
component: 'layout/Layout',
|
||||
redirect: 'dashboard',
|
||||
path: "",
|
||||
component: "layout/Layout",
|
||||
redirect: "dashboard",
|
||||
children: [
|
||||
{
|
||||
path: 'dashboard',
|
||||
component: 'views/dashboard/index',
|
||||
name: 'Dashboard',
|
||||
meta: { title: 'Dashboard', icon: 'dashboard', affix: true }
|
||||
path: "dashboard",
|
||||
component: "views/dashboard/index",
|
||||
name: "Dashboard",
|
||||
meta: { title: "Dashboard", icon: "dashboard", affix: true }
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
path: '/documentation',
|
||||
component: 'layout/Layout',
|
||||
path: "/documentation",
|
||||
component: "layout/Layout",
|
||||
children: [
|
||||
{
|
||||
path: 'index',
|
||||
component: 'views/documentation/index',
|
||||
name: 'Documentation',
|
||||
meta: { title: 'Documentation', icon: 'documentation', affix: true }
|
||||
path: "index",
|
||||
component: "views/documentation/index",
|
||||
name: "Documentation",
|
||||
meta: { title: "Documentation", icon: "documentation", affix: true }
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
path: '/guide',
|
||||
component: 'layout/Layout',
|
||||
redirect: '/guide/index',
|
||||
path: "/guide",
|
||||
component: "layout/Layout",
|
||||
redirect: "/guide/index",
|
||||
children: [
|
||||
{
|
||||
path: 'index',
|
||||
component: 'views/guide/index',
|
||||
name: 'Guide',
|
||||
meta: { title: 'Guide', icon: 'guide', noCache: true }
|
||||
path: "index",
|
||||
component: "views/guide/index",
|
||||
name: "Guide",
|
||||
meta: { title: "Guide", icon: "guide", noCache: true }
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
];
|
||||
|
||||
export const asyncRoutes = [
|
||||
{
|
||||
path: '/permission',
|
||||
component: 'layout/Layout',
|
||||
redirect: '/permission/index',
|
||||
path: "/permission",
|
||||
component: "layout/Layout",
|
||||
redirect: "/permission/index",
|
||||
alwaysShow: true,
|
||||
meta: {
|
||||
title: 'Permission',
|
||||
icon: 'lock',
|
||||
roles: ['admin', 'editor']
|
||||
title: "Permission",
|
||||
icon: "lock",
|
||||
roles: ["admin", "editor"]
|
||||
},
|
||||
children: [
|
||||
{
|
||||
path: 'page',
|
||||
component: 'views/permission/page',
|
||||
name: 'PagePermission',
|
||||
path: "page",
|
||||
component: "views/permission/page",
|
||||
name: "PagePermission",
|
||||
meta: {
|
||||
title: 'Page Permission',
|
||||
roles: ['admin']
|
||||
title: "Page Permission",
|
||||
roles: ["admin"]
|
||||
}
|
||||
},
|
||||
{
|
||||
path: 'directive',
|
||||
component: 'views/permission/directive',
|
||||
name: 'DirectivePermission',
|
||||
path: "directive",
|
||||
component: "views/permission/directive",
|
||||
name: "DirectivePermission",
|
||||
meta: {
|
||||
title: 'Directive Permission'
|
||||
title: "Directive Permission"
|
||||
}
|
||||
},
|
||||
{
|
||||
path: 'role',
|
||||
component: 'views/permission/role',
|
||||
name: 'RolePermission',
|
||||
path: "role",
|
||||
component: "views/permission/role",
|
||||
name: "RolePermission",
|
||||
meta: {
|
||||
title: 'Role Permission',
|
||||
roles: ['admin']
|
||||
title: "Role Permission",
|
||||
roles: ["admin"]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
path: '/icon',
|
||||
component: 'layout/Layout',
|
||||
path: "/icon",
|
||||
component: "layout/Layout",
|
||||
children: [
|
||||
{
|
||||
path: 'index',
|
||||
component: 'views/icons/index',
|
||||
name: 'Icons',
|
||||
meta: { title: 'Icons', icon: 'icon', noCache: true }
|
||||
path: "index",
|
||||
component: "views/icons/index",
|
||||
name: "Icons",
|
||||
meta: { title: "Icons", icon: "icon", noCache: true }
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
path: '/components',
|
||||
component: 'layout/Layout',
|
||||
redirect: 'noRedirect',
|
||||
name: 'ComponentDemo',
|
||||
path: "/components",
|
||||
component: "layout/Layout",
|
||||
redirect: "noRedirect",
|
||||
name: "ComponentDemo",
|
||||
meta: {
|
||||
title: 'Components',
|
||||
icon: 'component'
|
||||
title: "Components",
|
||||
icon: "component"
|
||||
},
|
||||
children: [
|
||||
{
|
||||
path: 'tinymce',
|
||||
component: 'views/components-demo/tinymce',
|
||||
name: 'TinymceDemo',
|
||||
meta: { title: 'Tinymce' }
|
||||
path: "tinymce",
|
||||
component: "views/components-demo/tinymce",
|
||||
name: "TinymceDemo",
|
||||
meta: { title: "Tinymce" }
|
||||
},
|
||||
{
|
||||
path: 'markdown',
|
||||
component: 'views/components-demo/markdown',
|
||||
name: 'MarkdownDemo',
|
||||
meta: { title: 'Markdown' }
|
||||
path: "markdown",
|
||||
component: "views/components-demo/markdown",
|
||||
name: "MarkdownDemo",
|
||||
meta: { title: "Markdown" }
|
||||
},
|
||||
{
|
||||
path: 'json-editor',
|
||||
component: 'views/components-demo/json-editor',
|
||||
name: 'JsonEditorDemo',
|
||||
meta: { title: 'Json Editor' }
|
||||
path: "json-editor",
|
||||
component: "views/components-demo/json-editor",
|
||||
name: "JsonEditorDemo",
|
||||
meta: { title: "Json Editor" }
|
||||
},
|
||||
{
|
||||
path: 'split-pane',
|
||||
component: 'views/components-demo/split-pane',
|
||||
name: 'SplitpaneDemo',
|
||||
meta: { title: 'SplitPane' }
|
||||
path: "split-pane",
|
||||
component: "views/components-demo/split-pane",
|
||||
name: "SplitpaneDemo",
|
||||
meta: { title: "SplitPane" }
|
||||
},
|
||||
{
|
||||
path: 'avatar-upload',
|
||||
component: 'views/components-demo/avatar-upload',
|
||||
name: 'AvatarUploadDemo',
|
||||
meta: { title: 'Avatar Upload' }
|
||||
path: "avatar-upload",
|
||||
component: "views/components-demo/avatar-upload",
|
||||
name: "AvatarUploadDemo",
|
||||
meta: { title: "Avatar Upload" }
|
||||
},
|
||||
{
|
||||
path: 'dropzone',
|
||||
component: 'views/components-demo/dropzone',
|
||||
name: 'DropzoneDemo',
|
||||
meta: { title: 'Dropzone' }
|
||||
path: "dropzone",
|
||||
component: "views/components-demo/dropzone",
|
||||
name: "DropzoneDemo",
|
||||
meta: { title: "Dropzone" }
|
||||
},
|
||||
{
|
||||
path: 'sticky',
|
||||
component: 'views/components-demo/sticky',
|
||||
name: 'StickyDemo',
|
||||
meta: { title: 'Sticky' }
|
||||
path: "sticky",
|
||||
component: "views/components-demo/sticky",
|
||||
name: "StickyDemo",
|
||||
meta: { title: "Sticky" }
|
||||
},
|
||||
{
|
||||
path: 'count-to',
|
||||
component: 'views/components-demo/count-to',
|
||||
name: 'CountToDemo',
|
||||
meta: { title: 'Count To' }
|
||||
path: "count-to",
|
||||
component: "views/components-demo/count-to",
|
||||
name: "CountToDemo",
|
||||
meta: { title: "Count To" }
|
||||
},
|
||||
{
|
||||
path: 'mixin',
|
||||
component: 'views/components-demo/mixin',
|
||||
name: 'ComponentMixinDemo',
|
||||
meta: { title: 'componentMixin' }
|
||||
path: "mixin",
|
||||
component: "views/components-demo/mixin",
|
||||
name: "ComponentMixinDemo",
|
||||
meta: { title: "componentMixin" }
|
||||
},
|
||||
{
|
||||
path: 'back-to-top',
|
||||
component: 'views/components-demo/back-to-top',
|
||||
name: 'BackToTopDemo',
|
||||
meta: { title: 'Back To Top' }
|
||||
path: "back-to-top",
|
||||
component: "views/components-demo/back-to-top",
|
||||
name: "BackToTopDemo",
|
||||
meta: { title: "Back To Top" }
|
||||
},
|
||||
{
|
||||
path: 'drag-dialog',
|
||||
component: 'views/components-demo/drag-dialog',
|
||||
name: 'DragDialogDemo',
|
||||
meta: { title: 'Drag Dialog' }
|
||||
path: "drag-dialog",
|
||||
component: "views/components-demo/drag-dialog",
|
||||
name: "DragDialogDemo",
|
||||
meta: { title: "Drag Dialog" }
|
||||
},
|
||||
{
|
||||
path: 'drag-select',
|
||||
component: 'views/components-demo/drag-select',
|
||||
name: 'DragSelectDemo',
|
||||
meta: { title: 'Drag Select' }
|
||||
path: "drag-select",
|
||||
component: "views/components-demo/drag-select",
|
||||
name: "DragSelectDemo",
|
||||
meta: { title: "Drag Select" }
|
||||
},
|
||||
{
|
||||
path: 'dnd-list',
|
||||
component: 'views/components-demo/dnd-list',
|
||||
name: 'DndListDemo',
|
||||
meta: { title: 'Dnd List' }
|
||||
path: "dnd-list",
|
||||
component: "views/components-demo/dnd-list",
|
||||
name: "DndListDemo",
|
||||
meta: { title: "Dnd List" }
|
||||
},
|
||||
{
|
||||
path: 'drag-kanban',
|
||||
component: 'views/components-demo/drag-kanban',
|
||||
name: 'DragKanbanDemo',
|
||||
meta: { title: 'Drag Kanban' }
|
||||
path: "drag-kanban",
|
||||
component: "views/components-demo/drag-kanban",
|
||||
name: "DragKanbanDemo",
|
||||
meta: { title: "Drag Kanban" }
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
path: '/charts',
|
||||
component: 'layout/Layout',
|
||||
redirect: 'noRedirect',
|
||||
name: 'Charts',
|
||||
path: "/charts",
|
||||
component: "layout/Layout",
|
||||
redirect: "noRedirect",
|
||||
name: "Charts",
|
||||
meta: {
|
||||
title: 'Charts',
|
||||
icon: 'chart'
|
||||
title: "Charts",
|
||||
icon: "chart"
|
||||
},
|
||||
children: [
|
||||
{
|
||||
path: 'keyboard',
|
||||
component: 'views/charts/keyboard',
|
||||
name: 'KeyboardChart',
|
||||
meta: { title: 'Keyboard Chart', noCache: true }
|
||||
path: "keyboard",
|
||||
component: "views/charts/keyboard",
|
||||
name: "KeyboardChart",
|
||||
meta: { title: "Keyboard Chart", noCache: true }
|
||||
},
|
||||
{
|
||||
path: 'line',
|
||||
component: 'views/charts/line',
|
||||
name: 'LineChart',
|
||||
meta: { title: 'Line Chart', noCache: true }
|
||||
path: "line",
|
||||
component: "views/charts/line",
|
||||
name: "LineChart",
|
||||
meta: { title: "Line Chart", noCache: true }
|
||||
},
|
||||
{
|
||||
path: 'mixchart',
|
||||
component: 'views/charts/mixChart',
|
||||
name: 'MixChart',
|
||||
meta: { title: 'Mix Chart', noCache: true }
|
||||
path: "mixchart",
|
||||
component: "views/charts/mixChart",
|
||||
name: "MixChart",
|
||||
meta: { title: "Mix Chart", noCache: true }
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
path: '/nested',
|
||||
component: 'layout/Layout',
|
||||
redirect: '/nested/menu1/menu1-1',
|
||||
name: 'Nested',
|
||||
path: "/nested",
|
||||
component: "layout/Layout",
|
||||
redirect: "/nested/menu1/menu1-1",
|
||||
name: "Nested",
|
||||
meta: {
|
||||
title: 'Nested',
|
||||
icon: 'nested'
|
||||
title: "Nested",
|
||||
icon: "nested"
|
||||
},
|
||||
children: [
|
||||
{
|
||||
path: 'menu1',
|
||||
component: 'views/nested/menu1/index',
|
||||
name: 'Menu1',
|
||||
meta: { title: 'Menu1' },
|
||||
redirect: '/nested/menu1/menu1-1',
|
||||
path: "menu1",
|
||||
component: "views/nested/menu1/index",
|
||||
name: "Menu1",
|
||||
meta: { title: "Menu1" },
|
||||
redirect: "/nested/menu1/menu1-1",
|
||||
children: [
|
||||
{
|
||||
path: 'menu1-1',
|
||||
component: 'views/nested/menu1/menu1-1',
|
||||
name: 'Menu1-1',
|
||||
meta: { title: 'Menu1-1' }
|
||||
path: "menu1-1",
|
||||
component: "views/nested/menu1/menu1-1",
|
||||
name: "Menu1-1",
|
||||
meta: { title: "Menu1-1" }
|
||||
},
|
||||
{
|
||||
path: 'menu1-2',
|
||||
component: 'views/nested/menu1/menu1-2',
|
||||
name: 'Menu1-2',
|
||||
redirect: '/nested/menu1/menu1-2/menu1-2-1',
|
||||
meta: { title: 'Menu1-2' },
|
||||
path: "menu1-2",
|
||||
component: "views/nested/menu1/menu1-2",
|
||||
name: "Menu1-2",
|
||||
redirect: "/nested/menu1/menu1-2/menu1-2-1",
|
||||
meta: { title: "Menu1-2" },
|
||||
children: [
|
||||
{
|
||||
path: 'menu1-2-1',
|
||||
component: 'views/nested/menu1/menu1-2/menu1-2-1',
|
||||
name: 'Menu1-2-1',
|
||||
meta: { title: 'Menu1-2-1' }
|
||||
path: "menu1-2-1",
|
||||
component: "views/nested/menu1/menu1-2/menu1-2-1",
|
||||
name: "Menu1-2-1",
|
||||
meta: { title: "Menu1-2-1" }
|
||||
},
|
||||
{
|
||||
path: 'menu1-2-2',
|
||||
component: 'views/nested/menu1/menu1-2/menu1-2-2',
|
||||
name: 'Menu1-2-2',
|
||||
meta: { title: 'Menu1-2-2' }
|
||||
path: "menu1-2-2",
|
||||
component: "views/nested/menu1/menu1-2/menu1-2-2",
|
||||
name: "Menu1-2-2",
|
||||
meta: { title: "Menu1-2-2" }
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
path: 'menu1-3',
|
||||
component: 'views/nested/menu1/menu1-3',
|
||||
name: 'Menu1-3',
|
||||
meta: { title: 'Menu1-3' }
|
||||
path: "menu1-3",
|
||||
component: "views/nested/menu1/menu1-3",
|
||||
name: "Menu1-3",
|
||||
meta: { title: "Menu1-3" }
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
path: 'menu2',
|
||||
name: 'Menu2',
|
||||
component: 'views/nested/menu2/index',
|
||||
meta: { title: 'Menu2' }
|
||||
path: "menu2",
|
||||
name: "Menu2",
|
||||
component: "views/nested/menu2/index",
|
||||
meta: { title: "Menu2" }
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
path: '/example',
|
||||
component: 'layout/Layout',
|
||||
redirect: '/example/list',
|
||||
name: 'Example',
|
||||
path: "/example",
|
||||
component: "layout/Layout",
|
||||
redirect: "/example/list",
|
||||
name: "Example",
|
||||
meta: {
|
||||
title: 'Example',
|
||||
icon: 'example'
|
||||
title: "Example",
|
||||
icon: "example"
|
||||
},
|
||||
children: [
|
||||
{
|
||||
path: 'create',
|
||||
component: 'views/example/create',
|
||||
name: 'CreateArticle',
|
||||
meta: { title: 'Create Article', icon: 'edit' }
|
||||
path: "create",
|
||||
component: "views/example/create",
|
||||
name: "CreateArticle",
|
||||
meta: { title: "Create Article", icon: "edit" }
|
||||
},
|
||||
{
|
||||
path: 'edit/:id(\\d+)',
|
||||
component: 'views/example/edit',
|
||||
name: 'EditArticle',
|
||||
meta: { title: 'Edit Article', noCache: true },
|
||||
path: "edit/:id(\\d+)",
|
||||
component: "views/example/edit",
|
||||
name: "EditArticle",
|
||||
meta: { title: "Edit Article", noCache: true },
|
||||
hidden: true
|
||||
},
|
||||
{
|
||||
path: 'list',
|
||||
component: 'views/example/list',
|
||||
name: 'ArticleList',
|
||||
meta: { title: 'Article List', icon: 'list' }
|
||||
path: "list",
|
||||
component: "views/example/list",
|
||||
name: "ArticleList",
|
||||
meta: { title: "Article List", icon: "list" }
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
path: '/tab',
|
||||
component: 'layout/Layout',
|
||||
path: "/tab",
|
||||
component: "layout/Layout",
|
||||
children: [
|
||||
{
|
||||
path: 'index',
|
||||
component: 'views/tab/index',
|
||||
name: 'Tab',
|
||||
meta: { title: 'Tab', icon: 'tab' }
|
||||
path: "index",
|
||||
component: "views/tab/index",
|
||||
name: "Tab",
|
||||
meta: { title: "Tab", icon: "tab" }
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
path: '/error',
|
||||
component: 'layout/Layout',
|
||||
redirect: 'noRedirect',
|
||||
name: 'ErrorPages',
|
||||
path: "/error",
|
||||
component: "layout/Layout",
|
||||
redirect: "noRedirect",
|
||||
name: "ErrorPages",
|
||||
meta: {
|
||||
title: 'Error Pages',
|
||||
icon: '404'
|
||||
title: "Error Pages",
|
||||
icon: "404"
|
||||
},
|
||||
children: [
|
||||
{
|
||||
path: '401',
|
||||
component: 'views/error-page/401',
|
||||
name: 'Page401',
|
||||
meta: { title: 'Page 401', noCache: true }
|
||||
path: "401",
|
||||
component: "views/error-page/401",
|
||||
name: "Page401",
|
||||
meta: { title: "Page 401", noCache: true }
|
||||
},
|
||||
{
|
||||
path: '404',
|
||||
component: 'views/error-page/404',
|
||||
name: 'Page404',
|
||||
meta: { title: 'Page 404', noCache: true }
|
||||
path: "404",
|
||||
component: "views/error-page/404",
|
||||
name: "Page404",
|
||||
meta: { title: "Page 404", noCache: true }
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
path: '/error-log',
|
||||
component: 'layout/Layout',
|
||||
redirect: 'noRedirect',
|
||||
path: "/error-log",
|
||||
component: "layout/Layout",
|
||||
redirect: "noRedirect",
|
||||
children: [
|
||||
{
|
||||
path: 'log',
|
||||
component: 'views/error-log/index',
|
||||
name: 'ErrorLog',
|
||||
meta: { title: 'Error Log', icon: 'bug' }
|
||||
path: "log",
|
||||
component: "views/error-log/index",
|
||||
name: "ErrorLog",
|
||||
meta: { title: "Error Log", icon: "bug" }
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
path: '/excel',
|
||||
component: 'layout/Layout',
|
||||
redirect: '/excel/export-excel',
|
||||
name: 'Excel',
|
||||
path: "/excel",
|
||||
component: "layout/Layout",
|
||||
redirect: "/excel/export-excel",
|
||||
name: "Excel",
|
||||
meta: {
|
||||
title: 'Excel',
|
||||
icon: 'excel'
|
||||
title: "Excel",
|
||||
icon: "excel"
|
||||
},
|
||||
children: [
|
||||
{
|
||||
path: 'export-excel',
|
||||
component: 'views/excel/export-excel',
|
||||
name: 'ExportExcel',
|
||||
meta: { title: 'Export Excel' }
|
||||
path: "export-excel",
|
||||
component: "views/excel/export-excel",
|
||||
name: "ExportExcel",
|
||||
meta: { title: "Export Excel" }
|
||||
},
|
||||
{
|
||||
path: 'export-selected-excel',
|
||||
component: 'views/excel/select-excel',
|
||||
name: 'SelectExcel',
|
||||
meta: { title: 'Select Excel' }
|
||||
path: "export-selected-excel",
|
||||
component: "views/excel/select-excel",
|
||||
name: "SelectExcel",
|
||||
meta: { title: "Select Excel" }
|
||||
},
|
||||
{
|
||||
path: 'export-merge-header',
|
||||
component: 'views/excel/merge-header',
|
||||
name: 'MergeHeader',
|
||||
meta: { title: 'Merge Header' }
|
||||
path: "export-merge-header",
|
||||
component: "views/excel/merge-header",
|
||||
name: "MergeHeader",
|
||||
meta: { title: "Merge Header" }
|
||||
},
|
||||
{
|
||||
path: 'upload-excel',
|
||||
component: 'views/excel/upload-excel',
|
||||
name: 'UploadExcel',
|
||||
meta: { title: 'Upload Excel' }
|
||||
path: "upload-excel",
|
||||
component: "views/excel/upload-excel",
|
||||
name: "UploadExcel",
|
||||
meta: { title: "Upload Excel" }
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
path: '/zip',
|
||||
component: 'layout/Layout',
|
||||
redirect: '/zip/download',
|
||||
path: "/zip",
|
||||
component: "layout/Layout",
|
||||
redirect: "/zip/download",
|
||||
alwaysShow: true,
|
||||
meta: { title: 'Zip', icon: 'zip' },
|
||||
meta: { title: "Zip", icon: "zip" },
|
||||
children: [
|
||||
{
|
||||
path: 'download',
|
||||
component: 'views/zip/index',
|
||||
name: 'ExportZip',
|
||||
meta: { title: 'Export Zip' }
|
||||
path: "download",
|
||||
component: "views/zip/index",
|
||||
name: "ExportZip",
|
||||
meta: { title: "Export Zip" }
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
path: '/pdf',
|
||||
component: 'layout/Layout',
|
||||
redirect: '/pdf/index',
|
||||
path: "/pdf",
|
||||
component: "layout/Layout",
|
||||
redirect: "/pdf/index",
|
||||
children: [
|
||||
{
|
||||
path: 'index',
|
||||
component: 'views/pdf/index',
|
||||
name: 'PDF',
|
||||
meta: { title: 'PDF', icon: 'pdf' }
|
||||
path: "index",
|
||||
component: "views/pdf/index",
|
||||
name: "PDF",
|
||||
meta: { title: "PDF", icon: "pdf" }
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
path: '/pdf/download',
|
||||
component: 'views/pdf/download',
|
||||
path: "/pdf/download",
|
||||
component: "views/pdf/download",
|
||||
hidden: true
|
||||
},
|
||||
|
||||
{
|
||||
path: '/theme',
|
||||
component: 'layout/Layout',
|
||||
redirect: 'noRedirect',
|
||||
path: "/theme",
|
||||
component: "layout/Layout",
|
||||
redirect: "noRedirect",
|
||||
children: [
|
||||
{
|
||||
path: 'index',
|
||||
component: 'views/theme/index',
|
||||
name: 'Theme',
|
||||
meta: { title: 'Theme', icon: 'theme' }
|
||||
path: "index",
|
||||
component: "views/theme/index",
|
||||
name: "Theme",
|
||||
meta: { title: "Theme", icon: "theme" }
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
path: '/clipboard',
|
||||
component: 'layout/Layout',
|
||||
redirect: 'noRedirect',
|
||||
path: "/clipboard",
|
||||
component: "layout/Layout",
|
||||
redirect: "noRedirect",
|
||||
children: [
|
||||
{
|
||||
path: 'index',
|
||||
component: 'views/clipboard/index',
|
||||
name: 'ClipboardDemo',
|
||||
meta: { title: 'Clipboard Demo', icon: 'clipboard' }
|
||||
path: "index",
|
||||
component: "views/clipboard/index",
|
||||
name: "ClipboardDemo",
|
||||
meta: { title: "Clipboard Demo", icon: "clipboard" }
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
path: '/i18n',
|
||||
component: 'layout/Layout',
|
||||
path: "/i18n",
|
||||
component: "layout/Layout",
|
||||
children: [
|
||||
{
|
||||
path: 'index',
|
||||
component: 'views/i18n-demo/index',
|
||||
name: 'I18n',
|
||||
meta: { title: 'I18n', icon: 'international' }
|
||||
path: "index",
|
||||
component: "views/i18n-demo/index",
|
||||
name: "I18n",
|
||||
meta: { title: "I18n", icon: "international" }
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
path: 'external-link',
|
||||
component: 'layout/Layout',
|
||||
path: "external-link",
|
||||
component: "layout/Layout",
|
||||
children: [
|
||||
{
|
||||
path: 'https://github.com/PanJiaChen/vue-element-admin',
|
||||
meta: { title: 'External Link', icon: 'link' }
|
||||
path: "https://github.com/PanJiaChen/vue-element-admin",
|
||||
meta: { title: "External Link", icon: "link" }
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
{ path: '*', redirect: '/404', hidden: true }
|
||||
]
|
||||
{ path: "*", redirect: "/404", hidden: true }
|
||||
];
|
||||
|
Reference in New Issue
Block a user