Skip to content

haochuan9421/vue-optimization

 
 

Repository files navigation

vue-optimization

本项目意在通过不同的分支展示不同的优化方式,对vue项目性能的影响,探索vue开发中有显著效果可行性优化方案(尽可能不改动业务代码)。你可以切换分支,查看git历史,通过比对文件变化,来了解实现的具体细节。

当前分支 —— cdn

  1. base分支的基础上,将原本依赖的vuevue-routervuexelement-uiaxios这五个库,全部改为通过CDN链接获取。
  2. 相应的调整webpack配置
  3. 卸载依赖的npm包,npm uninstall axios element-ui vue vue-router vuex
  4. 删除main.jselement-ui相关代码

具体细节可以查看git的历史记录

重新构建后的文件说明:

  1. app.css: 因为不再通过import 'element-ui/lib/theme-chalk/index.css',而是直接通过CDN链接的方式引入element-ui样式,使得文件小到了bytes级别,因为它现在仅包含少量的项目的css
  2. app.js:几乎无变化,因为这里面主要还是自己项目的代码。
  3. vendor.js:将5个依赖的js全部转为CDN链接后,已经小到了不足1KB,其实里面已经没有任何第三方库了。
  4. 数字.jsmainfest.js:这些文件本来就很小,变化几乎可以忽略。

优化后: 优化前:

禁用缓存,限速为Fast 3GNetwork图(运行在本地的nginx服务器上)

可以看出相同的网络环境下,加载从原来的7秒多,提速到现在的3秒多,提升非常明显。而且更重要的一点是原本的方式,所有 的jscss等静态资源都是请求的我们自己的nginx服务器,而现在大部分的静态资源都请求的是第三方的CDN资源, 这不仅可以带来速度上的提升,在高并发的时候,这无疑大大降低的自己服务器的带宽压力,想象一下原来首屏的900多KB的文件 现在仅剩20KB是请求自己服务器的!

About

探索vue项目性能优化的各种可行性方案

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published