Skip to content

Commit 7b80a7f

Browse files
committed
Code split Vue routes
1 parent c404a62 commit 7b80a7f

File tree

1 file changed

+45
-20
lines changed

1 file changed

+45
-20
lines changed

resources/js/router/index.js

+45-20
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,6 @@
11
import Vue from 'vue'
22
import VueRouter from 'vue-router'
33

4-
// Pages
5-
import Watched from '@/views/Watched'
6-
import NotFound from '@/views/NotFound'
7-
import Video from '@/views/Video'
8-
import Homepage from '@/views/Homepage'
9-
import Categories from '@/views/Categories'
10-
import Search from '@/views/Search'
11-
import Best from '@/views/Best'
12-
import MostViewed from '@/views/MostViewed'
13-
import Recommended from '@/views/Recommended'
14-
154
Vue.use(VueRouter)
165

176
export default new VueRouter({
@@ -20,47 +9,83 @@ export default new VueRouter({
209
routes: [
2110
{
2211
path: '/',
23-
component: Homepage,
12+
component: () =>
13+
import(
14+
/* webpackChunkName: "homepage.vue" */
15+
'@/views/Homepage.vue'
16+
),
2417
name: 'home'
2518
},
2619
{
2720
path: '/categories/:category',
28-
component: Categories,
21+
component: () =>
22+
import(
23+
/* webpackChunkName: "category.vue" */
24+
'@/views/Categories.vue'
25+
),
2926
name: 'categories'
3027
},
3128
{
3229
path: '/videos/:slug',
33-
component: Video,
30+
component: () =>
31+
import(
32+
/* webpackChunkName: "video.vue" */
33+
'@/views/Video.vue'
34+
),
3435
name: 'media'
3536
},
3637
{
3738
path: '/search',
38-
component: Search,
39+
component: () =>
40+
import(
41+
/* webpackChunkName: "search.vue" */
42+
'@/views/Search.vue'
43+
),
3944
name: 'search'
4045
},
4146
{
4247
path: '/my/watch-history',
43-
component: Watched,
48+
component: () =>
49+
import(
50+
/* webpackChunkName: "watch-history.vue" */
51+
'@/views/Watched.vue'
52+
),
4453
name: 'watched'
4554
},
4655
{
4756
path: '/best',
48-
component: Best,
57+
component: () =>
58+
import(
59+
/* webpackChunkName: "best.vue" */
60+
'@/views/Best.vue'
61+
),
4962
name: 'best'
5063
},
5164
{
5265
path: '/most-viewed',
53-
component: MostViewed,
66+
component: () =>
67+
import(
68+
/* webpackChunkName: "most-viewed.vue" */
69+
'@/views/MostViewed.vue'
70+
),
5471
name: 'most-viewed'
5572
},
5673
{
5774
path: '/recommended',
58-
component: Recommended,
75+
component: () =>
76+
import(
77+
/* webpackChunkName: "recommended.vue" */
78+
'@/views/Recommended.vue'
79+
),
5980
name: 'recommended'
6081
},
6182
{
6283
path: '*',
63-
component: NotFound,
84+
component: () =>
85+
import(
86+
/* webpackChunkName: "404.vue" */
87+
'@/views/NotFound.vue'
88+
),
6489
name: '404'
6590
}
6691
],

0 commit comments

Comments
 (0)