vue项目性能优化(路由懒加载、gzip加速、cdn加速)

本文深入探讨前端工程性能优化,涵盖GZIP压缩、路由懒加载及CDN加速等高级技巧,旨在提升网页加载速度,改善用户体验。

前端工程性能优化一说意义深远悠长,本章主要介绍除了一些基础优化外如何实行路由懒加载、Gzip加速、CDN加速,让网页飞的快一些。

基础优化

老生常谈的一些:

  • 不要在模板中写复杂的表达式
  • 慎用watch尤其是deep
  • 合理的使用v-if/v-show/v-for
  • 善用keep-alive
  • 使用Object.freeze()
  • ...
    这里不再细开展~主要说下以下几点:

一、 开启GZIP

体积对比图:
1541KB vs 466KB
1414921-20190102152928408-248031304.png

耗时对比图:
333ms vs 225ms
1414921-20190102152946353-71672934.png

操作步骤:
1、安装包(新版本的好像配置还要改~~)
1414921-20190102154613295-2121998291.png

2、webpack的配置
1414921-20190102154601551-516582540.png

3、nginx添加配置:

server {
        gzip on; #开启或关闭gzip on off
        gzip_static on;
        gzip_disable "msie6"; #不使用gzip IE6
        gzip_min_length 100k;  #gzip压缩最小文件大小,超出进行压缩(自行调节)
        gzip_types text/plain application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;  #压缩文件类型
        ...
}

二、路由懒加载

没有懒加载的状态下,vue打包文件会默认把所有的业务代码打包到一个app.js中,如果项目复杂,app.js将会很大进入首页的时间长,不利于用户体验。懒加载的意思是将页面进行划分,按需加载,进入页面才请求,有效分担首页压力,减少首页加载时间。这个是非常有用的。
看下对比图:
1414921-20190102153655199-574838845.png
1414921-20190102153700310-1605657835.png

方法:
1、配置chunkFilename属性
1414921-20190102154655256-1992206024.png

2、路由配置的时候,使用webpack的动态import
1414921-20190102154726227-1224176745.png

三、CND加速

vue打包文件会默认把所有的第三方代码打包到一个vendor.js中,我们可以把部分超大的文件剥离出来,使用cnd资源。如图,我们将vue/vuex/vue-router/axios分离出来降低vendor.js的压力。
1414921-20190102153935999-655515519.png

方法:
1、引入外部资源CDN
1414921-20190102154823942-1273622537.png

2、webpack处理(别名处理)
key:要引入的资源名称;value:模块提供给外部引用的名称
1414921-20190102154924326-361787014.png

3、去除引用,如果想避免全局污染,可如下定义
1414921-20190102155040784-496334672.png

小改造,大优化。尝试把三种方法都实现了,你会发现网页好像又飞快了一点,有咩有尼?

转载于:https://www.cnblogs.com/webhmy/p/10208833.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值