diff --git a/src/router/index.js b/src/router/index.js index bc3067e..33e5d7a 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -1,175 +1,53 @@ -import Vue from 'vue' -import Router from 'vue-router' - -Vue.use(Router) - -/* Layout */ -import Layout from '@/layout' - -/** - * Note: sub-menu only appear when route children.length >= 1 - * Detail see: https://panjiachen.github.io/vue-element-admin-site/guide/essentials/router-and-nav.html - * - * hidden: true if set true, item will not show in the sidebar(default is false) - * alwaysShow: true if set true, will always show the root menu - * if not set alwaysShow, when item has more than one children route, - * it will becomes nested mode, otherwise not show the root menu - * redirect: noRedirect if set noRedirect will no redirect in the breadcrumb - * name:'router-name' the name is used by (must set!!!) - * meta : { - roles: ['admin','editor'] control the page roles (you can set multiple roles) - title: 'title' the name show in sidebar and breadcrumb (recommend set) - icon: 'svg-name'/'el-icon-x' the icon show in the sidebar - breadcrumb: false if set false, the item will hidden in breadcrumb(default is true) - activeMenu: '/example/list' if set path, the sidebar will highlight the path you set - } - */ - -/** - * constantRoutes - * a base page that does not have permission requirements - * all roles can be accessed - */ -export const constantRoutes = [ - { - path: '/login', - component: () => import('@/views/login/index'), - hidden: true - }, - - { - path: '/404', - component: () => import('@/views/404'), - hidden: true - }, - - { - path: '/', - component: Layout, - redirect: '/dashboard', - children: [{ - path: 'dashboard', - name: 'Dashboard', - component: () => import('@/views/dashboard/index'), - meta: { title: 'Dashboard', icon: 'dashboard' } - }] - }, - - { - path: '/example', - component: Layout, - redirect: '/example/table', - name: 'Example', - meta: { title: 'Example', icon: 'el-icon-s-help' }, - children: [ - { - path: 'tree', - name: 'Tree', - component: () => import('@/views/tree/index'), - meta: { title: 'Tree', icon: 'tree' } - } - ] - }, - - { - path: '/form', - component: Layout, - children: [ - { - path: 'index', - name: 'Form', - component: () => import('@/views/form/index'), - meta: { title: 'Form', icon: 'form' } - } - ] - }, - - { - path: '/nested', - component: Layout, - redirect: '/nested/menu1', - name: 'Nested', - meta: { - title: 'Nested', - icon: 'nested' - }, - children: [ - { - path: 'menu1', - component: () => import('@/views/nested/menu1/index'), // Parent router-view - name: 'Menu1', - meta: { title: 'Menu1' }, - children: [ - { - path: 'menu1-1', - component: () => import('@/views/nested/menu1/menu1-1'), - name: 'Menu1-1', - meta: { title: 'Menu1-1' } - }, - { - path: 'menu1-2', - component: () => import('@/views/nested/menu1/menu1-2'), - name: 'Menu1-2', - meta: { title: 'Menu1-2' }, - children: [ - { - path: 'menu1-2-1', - component: () => import('@/views/nested/menu1/menu1-2/menu1-2-1'), - name: 'Menu1-2-1', - meta: { title: 'Menu1-2-1' } - }, - { - path: 'menu1-2-2', - component: () => import('@/views/nested/menu1/menu1-2/menu1-2-2'), - name: 'Menu1-2-2', - meta: { title: 'Menu1-2-2' } - } - ] - }, - { - path: 'menu1-3', - component: () => import('@/views/nested/menu1/menu1-3'), - name: 'Menu1-3', - meta: { title: 'Menu1-3' } - } - ] - }, - { - path: 'menu2', - component: () => import('@/views/nested/menu2/index'), - name: 'Menu2', - meta: { title: 'menu2' } - } - ] - }, - - { - path: 'external-link', - component: Layout, - children: [ - { - path: 'https://panjiachen.github.io/vue-element-admin-site/#/', - meta: { title: 'External Link', icon: 'link' } - } - ] - }, - - // 404 page must be placed at the end !!! - { path: '*', redirect: '/404', hidden: true } -] - -const createRouter = () => new Router({ - // mode: 'history', // require service support - scrollBehavior: () => ({ y: 0 }), - routes: constantRoutes -}) - -const router = createRouter() - -// Detail see: https://github.com/vuejs/vue-router/issues/1234#issuecomment-357941465 -export function resetRouter() { - const newRouter = createRouter() - router.matcher = newRouter.matcher // reset router -} - -export default router +import Vue from 'vue' +import Router from 'vue-router' + +Vue.use(Router) + +/* Layout */ +import Layout from '@/layout' + +// 创建静态路由对象: 登录, 首页, 404 +export const constantRoutes = [ + { + path: '/login', + component: () => import('@/views/login/index'), + hidden: true + }, + + { + path: '/', + component: Layout, + redirect: '/dashboard', + children: [{ + path: 'dashboard', + name: 'Dashboard', + component: () => import('@/views/dashboard/index'), + meta: { title: 'Dashboard', icon: 'dashboard' } + }] + }, + + { + path: '/404', + component: () => import('@/views/404'), + hidden: true + }, + + // 404 page must be placed at the end !!! + { path: '*', redirect: '/404', hidden: true } +] + +const createRouter = () => new Router({ + // mode: 'history', // require service support + scrollBehavior: () => ({ y: 0 }), + routes: constantRoutes +}) + +const router = createRouter() + +// Detail see: https://github.com/vuejs/vue-router/issues/1234#issuecomment-357941465 +export function resetRouter() { + const newRouter = createRouter() + router.matcher = newRouter.matcher // reset router +} + +export default router diff --git a/src/views/form/index.vue b/src/views/form/index.vue deleted file mode 100644 index d71e83d..0000000 --- a/src/views/form/index.vue +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - diff --git a/src/views/nested/menu1/index.vue b/src/views/nested/menu1/index.vue deleted file mode 100644 index 16c7aef..0000000 --- a/src/views/nested/menu1/index.vue +++ /dev/null @@ -1,7 +0,0 @@ - diff --git a/src/views/nested/menu1/menu1-1/index.vue b/src/views/nested/menu1/menu1-1/index.vue deleted file mode 100644 index 39eed16..0000000 --- a/src/views/nested/menu1/menu1-1/index.vue +++ /dev/null @@ -1,7 +0,0 @@ - diff --git a/src/views/nested/menu1/menu1-2/index.vue b/src/views/nested/menu1/menu1-2/index.vue deleted file mode 100644 index 7f8da90..0000000 --- a/src/views/nested/menu1/menu1-2/index.vue +++ /dev/null @@ -1,7 +0,0 @@ - diff --git a/src/views/nested/menu1/menu1-2/menu1-2-1/index.vue b/src/views/nested/menu1/menu1-2/menu1-2-1/index.vue deleted file mode 100644 index 916fd74..0000000 --- a/src/views/nested/menu1/menu1-2/menu1-2-1/index.vue +++ /dev/null @@ -1,5 +0,0 @@ - diff --git a/src/views/nested/menu1/menu1-2/menu1-2-2/index.vue b/src/views/nested/menu1/menu1-2/menu1-2-2/index.vue deleted file mode 100644 index 95160ae..0000000 --- a/src/views/nested/menu1/menu1-2/menu1-2-2/index.vue +++ /dev/null @@ -1,5 +0,0 @@ - diff --git a/src/views/nested/menu1/menu1-3/index.vue b/src/views/nested/menu1/menu1-3/index.vue deleted file mode 100644 index d49d7d3..0000000 --- a/src/views/nested/menu1/menu1-3/index.vue +++ /dev/null @@ -1,5 +0,0 @@ - diff --git a/src/views/nested/menu2/index.vue b/src/views/nested/menu2/index.vue deleted file mode 100644 index 5e85f6b..0000000 --- a/src/views/nested/menu2/index.vue +++ /dev/null @@ -1,5 +0,0 @@ - diff --git a/src/views/table/index.vue b/src/views/table/index.vue deleted file mode 100644 index dd2159f..0000000 --- a/src/views/table/index.vue +++ /dev/null @@ -1,79 +0,0 @@ - - - diff --git a/src/views/tree/index.vue b/src/views/tree/index.vue deleted file mode 100644 index 6f1c313..0000000 --- a/src/views/tree/index.vue +++ /dev/null @@ -1,78 +0,0 @@ - - - -