webpack3升级到webpack4遇到问题总结


Posted in Javascript onSeptember 30, 2019

最近由于项目需要,需要对已有的两个vue项目进行webpack3升级到webpack4,此处记录一下整个升级过程的几个重要步骤,以及遇到的问题和解决方案。

1、更新webpack以及相关联插件,webpack4新增插件webpack-cli

npm i -D webpack webpack-cli webpack-dev-server webpack-merge

2、运行npm run dev,报错:Error: webpack.optimize.CommonsChunkPlugin has been removed, please use config.optimization.splitChunks instead.

webpack3升级到webpack4遇到问题总结

原因:webpack.optimize.CommonsChunkPlugin 已废弃,修改为webpack.optimize.SplitChunksPlugin

3、运行报错:Error: Plugin could not be registered at 'html-webpack-plugin-before-html-processing'. Hook was not found.

webpack3升级到webpack4遇到问题总结

原因:webpack升级,html-webpack-plugin未匹配

解决方案:升级html-webpack-plugin插件

升级插件到 html-webpack-plugin: “^3.2.0”版本,再次运行,报错

webpack3升级到webpack4遇到问题总结

原因:项目中自定义由于需要,需要对每一个打包好的html模版都插入一段js,所以基于html-webpack-plugin自定义了一段插件代码,但是该代码需要根据webpack4重新处理一下,参考官网:https://github.com/jantimon/h...

解决:

第一步:升级插件 npm i -D html-webpack-plugin@next;
第二部修改自定义代码部分,如图:

webpack3升级到webpack4遇到问题总结

4、运行报错:Error: Chunk.entrypoints: Use Chunks.groupsIterable and filter by instanceof Entrypoint instead

webpack3升级到webpack4遇到问题总结

原因:Since webpack v4 the extract-text-webpack-plugin should not be used for css. Use mini-css-extract-plugin instead.

解决: npm install extract-text-webpack-plugin@next;

只更新extract-text-webpack-plugin可能没用,最好更新成mini-css-extract-plugin,具体可看第6步

5、报错:TypeError: Cannot read property 'vue' of undefined

webpack3升级到webpack4遇到问题总结

原因:更新webpack,未更新vue-loader

解决:npm i -D vue-loader

注意:webpack4需要在配置中加入插件的引用才会生效

const VueLoaderPlugin = require('vue-loader/lib/plugin');
//配置中加入
plugins: [
  new VueLoaderPlugin()
],

6、报错

webpack3升级到webpack4遇到问题总结

切换为mini-css-extract-plugin

webpack3升级到webpack4遇到问题总结

7、视情况更新

"vue-style-loader": "^4.1.2",
"vue-template-compiler": "^2.6.10”,
"html-webpack-exclude-assets-plugin": "0.0.7",
"html-webpack-inline-chunk-plugin": "^1.1.1",

8、删除

webpack3升级到webpack4遇到问题总结

在配置中加入

webpack3升级到webpack4遇到问题总结

9、BaseClient.js?e917:12 Uncaught TypeError: Cannot assign to read only property 'exports' of object ‘#
npm run dev不报错,但是在浏览器打开,控制台报错

webpack3升级到webpack4遇到问题总结

原因,webpack4之后,不允许混用 exports和import

解决: 修改include部分为下边这样

webpack3升级到webpack4遇到问题总结

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

Javascript 相关文章推荐
JavaScript 学习点滴记录
Apr 24 Javascript
jQuery的链式调用浅析
Dec 03 Javascript
jquery的选择器的使用技巧之如何选择input框
Sep 22 Javascript
textarea焦点的用法实现获取焦点清空失去焦点提示效果
May 19 Javascript
jQuery取id有.的值的方法
May 21 Javascript
动态载入js提高网页打开速度的方法
Jul 04 Javascript
再谈JavaScript线程
Jul 10 Javascript
jQuery实现垂直半透明手风琴特效代码分享
Aug 21 Javascript
KnockoutJS 3.X API 第四章之事件event绑定
Oct 10 Javascript
JavaScript学习笔记之函数记忆
Sep 06 Javascript
日期时间范围选择插件:daterangepicker使用总结(必看篇)
Sep 14 Javascript
解析Vue 2.5的Diff算法
Nov 28 Javascript
uploadify插件实现多个图片上传并预览
Sep 30 #Javascript
vue中使用[provide/inject]实现页面reload的方法
Sep 30 #Javascript
JavaScript中的null和undefined用法解析
Sep 30 #Javascript
vue resource发送请求的几种方式
Sep 30 #Javascript
Bootstrap table 实现树形表格联动选中联动取消功能
Sep 30 #Javascript
bootstrap table实现iview固定列的效果实例代码详解
Sep 30 #Javascript
JavaScript实现图片上传并预览并提交ajax
Sep 30 #Javascript
You might like
PHP脚本数据库功能详解(中)
2006/10/09 PHP
php实现可逆加密的方法
2015/08/11 PHP
ThinkPHP框架实现定时执行任务的两种方法分析
2018/09/04 PHP
PHP创建XML接口示例
2019/07/04 PHP
Laravel 验证码认证学习记录小结
2019/12/20 PHP
javascript优先加载笔记代码
2008/09/30 Javascript
Javascript 复制数组实现代码
2009/11/26 Javascript
JS对象与JSON格式数据相互转换
2012/02/20 Javascript
javascript垃圾收集机制与内存泄漏详细解析
2013/11/11 Javascript
判断日期是否能跨月查询的js代码
2014/07/25 Javascript
Windows8下搭建Node.js开发环境教程
2014/09/03 Javascript
使用node.js 制作网站前台后台
2014/11/13 Javascript
Jquery对象和Dom对象的区别分析
2014/11/20 Javascript
JavaScript的React框架中的JSX语法学习入门教程
2016/03/05 Javascript
JS结合bootstrap实现基本的增删改查功能
2016/07/22 Javascript
微信小程序 特效菜单抽屉效果实例代码
2017/01/11 Javascript
JQuery省市联动效果实现过程详解
2020/05/08 jQuery
python中global与nonlocal比较
2014/11/21 Python
python读取TXT到数组及列表去重后按原来顺序排序的方法
2015/06/26 Python
python抓取网页内容并进行语音播报的方法
2018/12/24 Python
Python 的字典(Dict)是如何存储的
2019/07/05 Python
如何使用Python自动控制windows桌面
2019/07/11 Python
python相对企业语言优势在哪
2020/06/12 Python
pytorch 常用函数 max ,eq说明
2020/06/28 Python
CSS3制作圆角图片和椭圆形图片
2016/07/08 HTML / CSS
详解如何在css中引入自定义字体(font-face)
2018/05/17 HTML / CSS
英国最大的电子产品和家电零售企业:Currys PC World
2016/09/24 全球购物
绿色美容,有机护肤品和化妆品:Safe & Chic
2018/10/29 全球购物
Kingsoft金山公司C/C++笔试题
2016/05/10 面试题
历史专业毕业生的自我鉴定
2013/11/15 职场文书
《走一步再走一步》教学反思
2014/02/15 职场文书
同学聚会通知书
2015/04/20 职场文书
红色电影观后感
2015/06/18 职场文书
幼儿园中班教学反思
2016/03/03 职场文书
详解python字符串驻留技术
2021/05/21 Python
Oracle表空间与权限的深入讲解
2021/11/17 Oracle