Vue单页面应用性能优化实践

最近业余时间一直在做一个个人项目,使用的是vue+vue-router实现的单页面应用。相对于多页面应用来说,其实单页面应用对性能优化的要求要更高,因为首屏加载的文件要更大,只要过了首屏加载问题,使用过程中单页面应用是会比多页面应用流畅的多的。闲话不多说,接下来讲下我优化过程中两个很实用的方法:

(1)对路由组件进行懒加载

这里的懒加载是指在访问到对应的组件时才加载它,首屏的时候不加载。这里实现的方法很简单,只要将以前直接import组件的方式改为:const Login = () => import('@/pages/Login’);即可。

我的项目最大文件(vendor.js)从1M变成了800kb,加载速度从10.5s变成了8.5s,有可能你会问,8.5s才加载出来是不是有点垃圾了,这我也没办法,服务器下载速度才一两百kb...

具体参考官网示例:https://router.vuejs.org/zh-cn/advanced/lazy-loading.html

(2)针对第三方库文件使用cdn方式

之前我是使用npm安装之后import方式,这样就相当于一起打包到了vendor文件里了。

按照bootstrap官网引入相应的cdn文件后(包括jquery和bootstrap),我的项目最大文件大小变成了680kb,加载速度从8.5s变成了5.8s。

然后试图引入element-ui theme-chalk之后,最大文件大小没多大变化,但是加载速度从5.8s变成了4.2s。

接着又引入了vue和element-ui cdn文件,这下网站有了巨大突破,最大文件竟然降到了37kb,自己都被惊讶到了,加载速度也从4.2s变成了80ms,整个网站加载完成只花了1.5s,终于达到了秒开的效果,美滋滋...哈哈哈

以上两点就是我最近实践过程的总结,以后有新的收获我也会进一步更新的。

附:我的个人项目可以在http://47.100.177.183体验,之所以没有域名,就是备案的锅,想备案上海的又要求上海居住证,想备案湖南老家的,又没有湖南归属地的手机号(个人觉得这是一个奇葩要求)…

Vue单页面应用性能优化实践相关推荐

  1. QQ音乐客户端Web页面通用性能优化实践

    导语 | QQ音乐 Android 客户端的 Web 页面日均 PV 达到千万量级,然而页面的打开耗时与 Native 页面相距甚远,需要系统性优化.本文将介绍 QQ 音乐 Android 客户端在进 ...

  2. QQ音乐Android客户端Web页面通用性能优化实践

    QQ音乐 Android 客户端的 Web 页面日均 PV 达到千万量级,然而页面的打开耗时与 Native 页面相距甚远,需要系统性优化.本文将介绍 QQ 音乐 Android 客户端在进行 Web ...

  3. webview加载的页面和浏览器渲染的页面不一致_QQ音乐Android客户端Web页面通用性能优化实践...

    QQ音乐 Android 客户端的 Web 页面日均 PV 达到千万量级,然而页面的打开耗时与 Native 页面相距甚远,需要系统性优化.本文将介绍 QQ 音乐 Android 客户端在进行 Web ...

  4. web 折线图大数据量拉取展示方案_【第2010期】QQ音乐Android客户端Web页面通用性能优化实践...

    前言 今日早读文章由QQ音乐客户端开发工程师@关岳分享,公号:云加社区(ID:QcloudCommunity,腾讯云官方开发者社区)授权分享. 正文从这开始~~ QQ音乐 Android 客户端的 W ...

  5. Kvm虚拟化性能测试与性能优化实践

    1.环境介绍 1.1测试简介 本次测试是针对KVM虚拟化在CPU.内存.磁盘.网络4大方面的全面性能测试与性能优化实践,目的在于通过对比测试,找出最适合我们所使用的硬件与软件架构的最佳优化配置,为Op ...

  6. 【前端性能优化实践】手把手教你实现webpack图片压缩插件

    前言 我想写一个系列:前端性能优化实践方案.网上虽然一搜一大把这样的文章,但大多缺乏体系化.也有很多讲性能优化的书籍,但其实想照着书上的知识进行实践,还是挺难的一件事. 这是该系列的第一篇文章 由于自 ...

  7. 性能优化实践:快速开启 Gzip 压缩

    概念初探 Gzip,全称为 GNU zip,是一种无损压缩文件的算法.其底采用的是 DEFLATE,而 DEFLATE 是 LZ77 与 哈夫曼编码 的一个组合体. 通常来说,"Gzip 压 ...

  8. prerender html5,HTML5 VUE单页应用 SEO 优化之 预渲染(prerender-spa-plugin)

    前言:当前 SPA 架构流行的趋势如日中天,前后端分离的业务模式已经成为互联网开发的主流方式,但是 单页面 应用始终存在一个痛点,那就是 SEO, 对于那些需要推广,希望能在百度搜索时排名靠前的网站而 ...

  9. 赠书:《Java性能优化实践》,众多业内大佬推荐阅读

    没有捷径可走的 Java 性能优化 多年来,用 Google 搜索 Java performance tuning,出现的三篇最热门文章之一是于 1997 年到 1998 年左右发表的文章,这篇文章在 ...

  10. Hadoop YARN:调度性能优化实践【转】

    原文地址:https://www.infoq.cn/article/dh5UpM_fJrtj1IgxQDsq 背景 YARN 作为 Hadoop 的资源管理系统,负责 Hadoop 集群上计算资源的管 ...

最新文章

  1. PostgreSQL 数据目录结构
  2. PHP pear安装
  3. IOS - JSON数据解析 小3种方法
  4. 清华大学人工智能研究院成立自然语言处理与社会人文计算研究中心
  5. grep,sort,uniq 用法例子
  6. 如何用“区块链+稳定币”技术来提升资产证券化市场运作效率
  7. C++11之std::async使用介绍
  8. java知识回顾_Java – 2012年回顾和未来预测
  9. 删文97篇!前UCLA教授竟是民科?不看好量子通信被禁言
  10. dfs.datanode.max.xcievers参数导致hbase集群报错
  11. mysql慢查询分析工具和分析方法
  12. bzoj 1503: [NOI2004]郁闷的出纳员 (splay)
  13. Atitit  记录方法调用参数上下文arguments
  14. mysql group by rowid_MySQL里面的group by问题浅析
  15. RHEL 6.4 安装DNS服务(bind-9.8 )
  16. C语言物流管理运输系统
  17. 金融交易学——一个专业交易者…
  18. 数字安全一个都不能少:360为企业数字化转型护航
  19. 彻底搞懂js中的this指向
  20. Goland常用快捷键

热门文章

  1. python中compile函数
  2. U盘快捷方式病毒查杀
  3. MAMP(win) Apache启动失败__句柄无效。 : master_main: create child process failed. Exiting.
  4. 基于TQ2440的SPI驱动学习(OLED)
  5. 清华大学梁宸计算机系,2015年自主招生--五大联赛银牌争夺战
  6. 科比:你知道洛杉矶每天早上四点钟是什么样子吗?
  7. pcre2 知:介绍
  8. 广告公司的招聘启事中,对职位的独到理解
  9. stack corruption detected (-fstack-protector)
  10. 指纹的对比分析系统概述