vue路由懒加载

正常情况下的路由加载

import Home from '@/components/home.vue'
const router = new VueRouter({
  routes: [
    { path: '/home', component: Home }
  ]
})

下面介绍路由懒加载的3种方式:

1、方案一(常用):使用箭头函数+import动态加载

const Home = () => import('@/components/home.vue')
const router = new VueRouter({
  routes: [
    { path: '/home', component: Home }
  ]
})

2、方案二:使用箭头函数+require动态加载

const router = new Router({
  routes: [
   {
     path: '/home',
     component: resolve => require(['@/components/home'], resolve)
   }
  ]
})

3、方案三:使用webpack的require.ensure技术,也可以实现按需加载。 这种情况下,多个路由指定相同的chunkName,会合并打包成一个js文件。

// r就是resolve
const Home = r => require.ensure([], () => r(require('@/components/home')), 'home');
// 路由也是正常的写法  这种是官方推荐的写的 按模块划分懒加载 
const router = new Router({
  routes: [
  {
    path: '/home',
    component: Home,
    name: 'home'
  }
 ]
}))

你可能感兴趣的:(前端,javascript,vue,vue.js,javascript,前端,路由)