详解关于webpack多入口热加载很慢的原因


Posted in Javascript onApril 24, 2019

之前为公司搭建了套webpack多页面应用脚手架,起初用得挺爽,资源整合打包,组件化开发,各种组件复用,需要什么就拿什么,后来入口有50个页面了,慢慢的发现了每次按保存后的热加载等待时间越来越长,需要等待10几秒,实在太影响开发效率,于是我查找原因。

观察发现,每次到热加载时会在emitting HtmlWebpackPlugin这停留很久。

详解关于webpack多入口热加载很慢的原因

于是我想知道它到底停留了多长时间呢?

在package.json内加入--profile,它会告诉你编译过程中哪些步骤耗时最长。

详解关于webpack多入口热加载很慢的原因

停止npm,重新运行webpack-dev-server,修改下文件按保存,观察控制台,发现总花费时长为15035毫秒,在emitting就花费了13239毫秒,这emitting应该就是指上面的图片的emitting HtmlWebpackPlugin了,看来我们解决HtmlWebpackPlugin,热加载速度就能恢复正常了。

详解关于webpack多入口热加载很慢的原因

HtmlWebpackPlugin就是我们入口对应的的html页面,new的页面越多,热加载速度就会越慢。

详解关于webpack多入口热加载很慢的原因

我尝试注释掉所有html页面,只留下一个案例详情html页面,重新启动webpack-dev-server,修改文件按下保存,发现速度惊人,只用了772毫米,看来问题出在html-webpack-plugin这个插件上。

详解关于webpack多入口热加载很慢的原因

详解关于webpack多入口热加载很慢的原因

难道是我的html-webpack-plugin配置有问题吗,于是我在网上寻找解决办法,做了各种尝试,直到我找到html-webpack-plugin的github上放弃寻找了,原来插件作者有发布几十条lssues(链接https://github.com/jantimon/html-webpack-plugin/issues),其中就包括该插件的多页面性能问题。

详解关于webpack多入口热加载很慢的原因

我尝试点进问题谈论里面看了看,里面的谈论已经不能算是怎样配置html-webpack-plugin插件了,涉及webpack底层的东西,觉得没必要去深究了,也让人不得不思考webpack现在是否适合多页面开发啊。。

总结:

1、HtmlWebpackPlugin除了正在开发的页面,其它注释掉。

2、等待插件作者修复此问题。

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

Javascript 相关文章推荐
复制小说文本时出现的随机乱码的去除方法
Sep 07 Javascript
javascript数组去掉重复
May 12 Javascript
jQuery学习笔记之jQuery原型属性和方法
Jun 09 Javascript
再分享70+免费的jquery 图片滑块效果插件和教程
Dec 15 Javascript
JS数字抽奖游戏实现方法
May 04 Javascript
javascript与Python快速排序实例对比
Aug 10 Javascript
Vue.js第三天学习笔记(计算属性computed)
Dec 01 Javascript
原生JS实现循环Nodelist Dom列表的4种方式示例
Feb 11 Javascript
Vue实现导出excel表格功能
Mar 30 Javascript
vue计算属性computed、事件、监听器watch的使用讲解
Jan 21 Javascript
了解JavaScript中的选择器
May 24 Javascript
JQuery+Bootstrap 自定义全屏Loading插件的示例demo
Jul 03 jQuery
微信小程序实现的一键连接wifi功能示例
Apr 24 #Javascript
vue router 通过路由来实现切换头部标题功能
Apr 24 #Javascript
js实现全选反选不选功能代码详解
Apr 24 #Javascript
使用vue2.6实现抖音【时间轮盘】屏保效果附源码
Apr 24 #Javascript
Vue源码解析之数据响应系统的使用
Apr 24 #Javascript
详解微信小程序文件下载--视频和图片
Apr 24 #Javascript
详解微信小程序之一键复制到剪切板
Apr 24 #Javascript
You might like
php的XML文件解释类应用实例
2014/09/22 PHP
php精度计算的问题解析
2019/06/21 PHP
js下拉菜单语言选项简单实现
2013/09/23 Javascript
js获取触发事件元素在整个网页中的绝对坐标(示例代码)
2013/12/13 Javascript
深入理解JavaScript系列(44):设计模式之桥接模式详解
2015/03/04 Javascript
探究JavaScript函数式编程的乐趣
2015/12/14 Javascript
关于JS 预解释的相关理解
2016/06/28 Javascript
JS多文件上传的实例代码
2017/01/11 Javascript
jQuery插件zTree实现单独选中根节点中第一个节点示例
2017/03/08 Javascript
javascript实现table单元格点击展开隐藏效果(实例代码)
2017/04/10 Javascript
WebPack配置vue多页面的技巧
2018/05/15 Javascript
vue项目中实现的微信分享功能示例
2019/01/21 Javascript
JS中使用react-tooltip插件实现鼠标悬浮显示框
2019/05/15 Javascript
[01:13]这,就是刀塔
2014/07/16 DOTA
[36:45]TNC vs VGJ.S 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
利用Python的Django框架生成PDF文件的教程
2015/07/22 Python
使用Python写个小监控
2016/01/27 Python
[原创]Python入门教程4. 元组基本操作
2018/10/31 Python
Python Web框架之Django框架文件上传功能详解
2019/08/16 Python
利用Python的turtle库绘制玫瑰教程
2019/11/23 Python
python装饰器使用实例详解
2019/12/14 Python
Pytorch Tensor 输出为txt和mat格式方式
2020/01/03 Python
python中使用you-get库批量在线下载bilibili视频的教程
2020/03/10 Python
Python 如何定义匿名或内联函数
2020/08/01 Python
详解python命令提示符窗口下如何运行python脚本
2020/09/11 Python
css3.0新属性效果在ie下的解决方案
2010/05/10 HTML / CSS
美国著名首饰网站:BaubleBar
2016/08/29 全球购物
CK澳大利亚官网:Calvin Klein澳大利亚
2020/12/12 全球购物
L’Artisan Parfumeur官网:法国香水品牌
2020/08/11 全球购物
乔布斯斯坦福大学演讲稿
2014/05/23 职场文书
云南省召开党的群众路线教育实践活动总结会议新闻稿
2014/10/21 职场文书
优秀小学生事迹材料
2014/12/26 职场文书
公务员年终个人总结
2015/02/12 职场文书
为什么MySQL 删除表数据 磁盘空间还一直被占用
2021/10/16 MySQL
SpringCloud中分析讲解Feign组件添加请求头有哪些坑梳理
2022/06/21 Java/Android
win10截图快捷键win+shift+s没有反应无法截图怎么解决?
2022/08/14 数码科技