vue性能优化之异步组件和路由懒加载

今天来聊聊vue2的性能小优化之异步组件路由懒加载

一、组件优化

目前代码块中包含了两个子组件,它们在符合条件的情况下才会渲染,采用了最基础的方式进行导入。

页面刷新后会加载五个文件,在点击显示两个组件时,只会新增一个文件,加载的是element的字体文件,也就是说在页面初始化时就已经加载了组件文件。

现在我们把它改写成异步组件,再来做个对比:

当我们点击显示组件时,控制台会新增一个请求,这时才会从服务器请求需要显示的源文件,另外一个组件也是同样的原理。

这样做的目的是在首屏渲染时减少加载文件的数量,在需要用到一些组件时才会从服务器获取,而且不会重复请求,可以有效的减少白屏的时间。

二、路由懒加载

接着来看一下路由懒加载:

目前这种方式,项目到后期javascript的包会变得非常大,影响页面加载。

而懒加载简单来说就是延迟加载或按需加载,即在需要使用到路由的时候才进行加载,修改如下:

常用的路由懒加载一般有两种,vue异步组件和ES中的import,不过这样写还是不够太简便,我们可以写一个方法将路由组件一次导入。

需要注意的是pages文件下的组件将会一次性全部导入,可根据需求来选择方案,这里的route.name需要与组件名称一致,不然无法导入。最后将路由导出即可。

相关推荐
秦jh_6 分钟前
【Linux】多线程(概念,控制)
linux·运维·前端
蜗牛快跑21319 分钟前
面向对象编程 vs 函数式编程
前端·函数式编程·面向对象编程
Dread_lxy20 分钟前
vue 依赖注入(Provide、Inject )和混入(mixins)
前端·javascript·vue.js
涔溪1 小时前
Ecmascript(ES)标准
前端·elasticsearch·ecmascript
榴莲千丞1 小时前
第8章利用CSS制作导航菜单
前端·css
奔跑草-1 小时前
【前端】深入浅出 - TypeScript 的详细讲解
前端·javascript·react.js·typescript
羡与1 小时前
echarts-gl 3D柱状图配置
前端·javascript·echarts
guokanglun2 小时前
CSS样式实现3D效果
前端·css·3d
咔咔库奇2 小时前
ES6进阶知识一
前端·ecmascript·es6
渗透测试老鸟-九青2 小时前
通过投毒Bingbot索引挖掘必应中的存储型XSS
服务器·前端·javascript·安全·web安全·缓存·xss