vue路由懒加载

Posted planetwithpig

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue路由懒加载相关的知识,希望对你有一定的参考价值。

路由懒加载能够提高页面的加载速度,不过使用也得看场合。有时候需要懒加载,提升首页加载速度,一般是页面层级较为复杂的时候。大家看一下不加代码分割浏览器加载的文件。

技术图片

这里蓝色部分是webpack自动分割出来的,当修改业务js时候manifest和vendor是不会改变的,浏览器直接在缓存中提取。

会变的是app.js。如果不采用路由分割会是什么效果呢。所有的代码都打包到app.js中,如果项目巨大,那么首页加载会是灾难。

 

1、当一个vue项目很大的时候,对于一些“暂时”用不到的组件,我们可以不进行加载,等到用到次组件时再加载。这样可以优化spa应用首次加载白屏情况,也给用户更好的体验。这样就是vue路由懒加载。

2、常用的懒加载方式有两种:即使用 ES中的import  和 vue异步组件 

2.1 未使用懒加载

import HelloWorld from ‘@/components/HelloWorld‘
export default new Router({
  routes: [
    {
      path: ‘/‘,
      name: ‘HelloWorld‘,
      component:HelloWorld
    }
  ]
})

2.2  使用ES中的动态import进行懒加载  (推荐使用,也是最常用的)

const HelloWorld = () => import("@/components/HelloWorld");
export default new Router({
  routes: [{
    path: ‘/‘,
    name: ‘HelloWorld‘,
    component: HelloWorld
  }]
})
/*或者*/
export default new Router({
  routes: [{
    path: ‘/‘,
    name: ‘HelloWorld‘,
    component: () => import("@/components/HelloWorld")
  }]
})
2.3  使用VUE中的异步组件进行懒加载
export default new Router({
  routes: [{
    path: ‘/‘,
    name: ‘HelloWorld‘,
    component: resolve => { require([‘@/components/HelloWorld‘],resovle); }
  }]
})

以上是关于vue路由懒加载的主要内容,如果未能解决你的问题,请参考以下文章

vue路由懒加载及组件懒加载

Vue路由懒加载与组件懒加载

Vue教程(四十二)路由懒加载

Vue教程(四十二)路由懒加载

vue路由懒加载

vue路由懒加载