1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
import Vue from 'vue'
import Router from 'vue-router'
Vue.use(Router)
/* Layout */
import Layout from '@/views/layout/Layout'
/* Router Modules */
import PickRouter from './modules/pick'
import PushRouter from './modules/push'
import TopicRouter from './modules/topic'
import StarRouter from './modules/star'
import GroupRouter from './modules/group'
import UserRouter from './modules/user'
import AccountRouter from './modules/account'
import TagRouter from './modules/tag'
import AdvertiseRouter from './modules/advertise'
export const constantRouterMap = [
{
path: '/redirect',
component: Layout,
hidden: true,
children: [
{
path: '/redirect/:path*',
component: () => import('@/views/redirect/index')
}
]
},
{
path: '/login',
component: () => import('@/views/login/index'),
hidden: true
},
{
path: '/auth-redirect',
component: () => import('@/views/login/authredirect'),
hidden: true
},
{
path: '/404',
component: () => import('@/views/errorPage/404'),
hidden: true
},
{
path: '/401',
component: () => import('@/views/errorPage/401'),
hidden: true
},
{
path: '',
component: Layout,
redirect: 'home',
children: [
{
path: 'home',
component: () => import('@/views/dashboard/index'),
name: 'Home',
meta: { title: '首页', icon: 'dashboard', noCache: true }
}
]
}
]
export default new Router({
// mode: 'history', // require service support
scrollBehavior: () => ({ y: 0 }),
routes: constantRouterMap
})
export const asyncRouterMap = [
/** When your routing table is too long, you can split it into small modules**/
AccountRouter,
UserRouter,
GroupRouter,
TopicRouter,
StarRouter,
PushRouter,
PickRouter,
TagRouter,
AdvertiseRouter,
{ path: '*', redirect: '/404', hidden: true }
]