详解vue项目首页加载速度优化


Posted in Javascript onOctober 18, 2017

凡是做SPA的项目,特别是移动端的SAP项目,首屏加载速度必定是一个绕不过去的话题。接下来我就我们项目里的一些实践来做一下总结。希望抛砖引玉,如果各位有更好的方案,不吝赐教。

1: 针对第三方js库的优化

我们项目里用到的第三方js库主要有:vue, vue-router, vuex, axio, 我们还用到了qiniu。大家知道这些依赖库的js文件都会被一起打包到vender那个js文件里面,如果这些你的第三方依赖库很多,很大的话,那就会导致vender这个文件很大,那首屏加载的速度肯定会被拖慢。

针对这个问题我们的解决方案是,用文档的cdn文件代替,而不用打包到vender里面去。具体的做法是:

1: 在index.html里面引入依赖库js文件

// index.html
<script src="https://cdn.bootcss.com/vue/2.3.3/vue.min.js"></script>
<script src="https://cdn.bootcss.com/axios/0.16.2/axios.min.js"></script>

2: 去掉第三方js的import,因为在第一步已经通过script标签引用进来了。

3: 把第三方库的js文件从打包文件里去掉

这一步的做法就是利用webpack的externals。具体做法就是在 build/webpack.base.conf.js文件的module里面与rules同层加入externals:

详解vue项目首页加载速度优化

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript 学习笔记(十二) dom
Jan 21 Javascript
简略的前端架构心得&amp;&amp;基于editor为例子的编码小技巧
Nov 25 Javascript
Javascript中this的用法详解
Sep 22 Javascript
jQuery中$.click()无效问题分析
Jan 29 Javascript
jquery 插件实现瀑布流图片展示实例
Apr 03 Javascript
js实现tab切换效果实例
Sep 16 Javascript
jquery UI Datepicker时间控件的使用方法(基础版)
Nov 07 Javascript
微信公众平台开发教程(四) 实例入门:机器人回复(附源码)
Dec 02 Javascript
jQuery模拟实现天猫购物车动画效果实例代码
May 25 jQuery
vue2 全局变量的设置方法
Mar 09 Javascript
微信小程序实现长按删除图片的示例
May 18 Javascript
vue中的mvvm模式讲解
Jan 31 Javascript
JS简单实现滑动加载数据的方法示例
Oct 18 #Javascript
详解cordova打包成webapp的方法
Oct 18 #Javascript
prototype.js简单实现ajax功能示例
Oct 18 #Javascript
浅谈JS函数节流防抖
Oct 18 #Javascript
用vue封装插件并发布到npm的方法步骤
Oct 18 #Javascript
详解Js中的模块化是如何实现的
Oct 18 #Javascript
JS跳转手机站url的若干注意事项
Oct 18 #Javascript
You might like
PHP中ADODB类详解
2008/03/25 PHP
php 上传文件类型判断函数(避免上传漏洞 )
2010/06/08 PHP
fleaphp常用方法分页之Pager使用方法
2011/04/23 PHP
PHP的5个安全措施小结
2012/07/17 PHP
php+js iframe实现上传头像界面无跳转
2014/04/29 PHP
PHP基于新浪IP库获取IP详细地址的方法
2017/05/04 PHP
javascript实现动态增加删除表格行(兼容IE/FF)
2007/04/02 Javascript
Javascript 生成指定范围数值随机数
2009/01/09 Javascript
JavaScript Cookie的读取和写入函数
2009/12/08 Javascript
javascript实现颜色渐变的方法
2013/10/30 Javascript
javascript结合ajax读取txt文件内容
2014/12/05 Javascript
js实现人才网站职位选择功能的方法
2015/08/14 Javascript
jQuery实现简单的列表式导航菜单效果代码
2015/08/31 Javascript
js日期相关函数dateAdd,dateDiff,dateFormat等介绍
2016/09/24 Javascript
Vue声明式渲染详解
2017/05/17 Javascript
基于IView中on-change属性的使用详解
2018/03/15 Javascript
JS 音频可视化插件Wavesurfer.js的使用教程
2018/10/31 Javascript
jQuery简单实现根据日期计算星期几的方法
2019/01/09 jQuery
快速了解Node中的Stream流是什么
2019/02/13 Javascript
简单了解微信小程序的目录结构
2019/07/01 Javascript
[01:13:01]2018DOTA2亚洲邀请赛 4.4 淘汰赛 TNC vs VG 第三场
2018/04/05 DOTA
详解Python中如何写控制台进度条的整理
2018/03/07 Python
python批量从es取数据的方法(文档数超过10000)
2018/12/27 Python
Python多线程爬取豆瓣影评API接口
2019/10/22 Python
解决pyshp UnicodeDecodeError的问题
2019/12/06 Python
用python对excel查重
2020/12/07 Python
ECCO爱步官方旗舰店:丹麦鞋履品牌
2018/01/02 全球购物
限量版运动鞋和街头服饰:TheDrop
2020/09/06 全球购物
毕业生在校学习的自我评价分享
2013/10/08 职场文书
2015年“世界无车日”活动方案
2015/05/06 职场文书
在校证明模板
2015/06/17 职场文书
公司财务制度:成本管理控制制度模板
2019/11/19 职场文书
浅谈由position属性引申的css进阶讨论
2021/05/25 HTML / CSS
浅谈JS的原型和原型链
2021/06/04 Javascript
Python中OpenCV实现查找轮廓的实例
2021/06/08 Python
Mysql数据库中datetime、bigint、timestamp来表示时间选择,谁来存储时间效率最高
2021/08/23 MySQL