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 相关文章推荐
js设置组合快捷键/tabindex功能的方法
Nov 21 Javascript
php,js,css字符串截取的办法集锦
Sep 26 Javascript
javascript使用输出语句实现网页特效代码
Aug 06 Javascript
jQuery Ajax 异步加载显示等待效果代码分享
Aug 01 Javascript
JS表单提交验证、input(type=number) 去三角 刷新验证码
Jun 21 Javascript
JS数组操作之增删改查的简单实现
Aug 21 Javascript
Vue工程模板文件 webpack打包配置方法
Dec 26 Javascript
vue如何判断dom的class
Apr 26 Javascript
详解基于webpack&gettext的前端多语言方案
Jan 29 Javascript
JavaScript高阶教程之“==”隐藏下的类型转换
Apr 11 Javascript
JS字符串补全方法padStart()和padEnd()
May 27 Javascript
antd日期选择器禁止选择当天之前的时间操作
Oct 29 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处理json时中文问题的解决方法
2011/04/12 PHP
php把数据表导出为Excel表的最简单、最快的方法(不用插件)
2014/05/10 PHP
php执行多个存储过程的方法【基于thinkPHP】
2016/11/08 PHP
php快速导入大量数据的实例方法
2019/09/23 PHP
永不消失的title提示代码
2007/02/15 Javascript
jQuery 全选效果实现代码
2009/03/23 Javascript
js对象之JS入门之Array对象操作小结
2011/01/09 Javascript
jquery下checked取值问题的解决方法
2012/08/09 Javascript
JS中数组Array的用法示例介绍
2014/02/20 Javascript
ztree获取当前选中节点子节点id集合的方法
2015/02/12 Javascript
js验证身份证号有效性并提示对应信息
2015/10/19 Javascript
AngularJS基础 ng-focus 指令简单示例
2016/08/01 Javascript
探讨AngularJs中ui.route的简单应用
2016/11/16 Javascript
JS实现的走迷宫小游戏完整实例
2017/07/19 Javascript
Vue表单绑定的实例代码(单选按钮,选择框(单选时,多选时,用 v-for 渲染的动态选项)
2019/05/13 Javascript
js canvas实现5张图片合成一张图片
2019/07/15 Javascript
详解node.js 事件循环
2020/07/22 Javascript
python中sets模块的用法实例
2014/09/30 Python
详解Django缓存处理中Vary头部的使用
2015/07/24 Python
Flask框架中密码的加盐哈希加密和验证功能的用法详解
2016/06/07 Python
Python中文件I/O高效操作处理的技巧分享
2017/02/04 Python
Python简单删除列表中相同元素的方法示例
2017/06/12 Python
用python编写第一个IDA插件的实例
2018/05/29 Python
tensorflow实现图像的裁剪和填充方法
2018/07/27 Python
详解Python odoo中嵌入html简单的分页功能
2019/05/29 Python
Numpy的简单用法小结
2019/08/28 Python
python自动识别文本编码格式代码
2019/12/26 Python
详解pycharm自动import所需的库的操作方法
2020/11/30 Python
CSS 说明横向进度条最后显示文字的实现代码
2020/11/10 HTML / CSS
瑜伽国际:Yoga International
2018/04/18 全球购物
美国知名的旅游网站:OneTravel
2018/10/09 全球购物
园林施工员岗位职责
2013/12/11 职场文书
党员学习中共十八大思想报告
2014/09/12 职场文书
入党介绍人意见怎么写
2015/06/03 职场文书
基于python的matplotlib制作双Y轴图
2021/04/20 Python
Python虚拟环境virtualenv是如何使用的
2021/06/20 Python