webpack 3.1 升级webpack 4.0
webpack 3.1 升级webpack 4.0
为了提升打包速度以及跟上主流技术步伐,前段时间把项目的webpack 升级到4.0版本以上
webpack 官网:https://webpack.js.org/
正常操作升级webpack
- 检查node、npm 版本,该升级的升级
- 卸载webpack 旧版本,安装最新稳定版本 wepack、webpack cli
- 遇到loader 报错,升级各种loader,其中vue-loader 参考vue loader 官网说明
- 删除 ExtractTextPlugin插件,改用 MiniCssExtractPlugin
- 配置各个环境的mode
- 升级好之后继续优化,比如 gzip、happlyPack、dllplugin等等优化手段
- 等等
通常上面的报错很容易找到解决方案
碰到的问题
1、安装了babel 最新版,但是一直提示加载的是之前的版本,babel 一直报错
通常这是因为之前babel 卸载的不完整导致的,先把babel 相关的插件全都卸载,然后在安装新版本的插件。
2、在路由index中提示组件加载失败或者提示路由动态加载模块失败
dynamic-import-webpack
完整babel 配置如下
{ "presets": ["@babel/preset-env"], // "presets": [ // ["env", { // "modules": false, // "useBuiltIns": "entry" // }], // "@babel/preset-env" // ], "plugins": [ [ "@babel/plugin-transform-runtime", { "absoluteRuntime": false, "corejs": false, "helpers": true, "regenerator": true, "useESModules": false } ], "@babel/plugin-syntax-dynamic-import", "@babel/plugin-proposal-object-rest-spread", "transform-vue-jsx", "dynamic-import-webpack", [ "component", { "libraryName": "element-ui", "styleLibraryName": "theme-chalk" } ] ], "env": { "test": { "presets": ["env", "stage-2"], "plugins": ["istanbul"] } } }
3、Babel 7+使用babel-plugin-transform-vue-jsx报错的解决方法
"plugins": [ "@babel/plugin-transform-runtime", "@babel/plugin-syntax-dynamic-import", "@babel/plugin-proposal-object-rest-spread", "transform-vue-jsx" ]
4、webpack 最好是看官网,webpakc 中文网并没有完全同步过来。
5、最新的babel 插件都是在@babel/ 名称空间下
效果
很多loader、插件都升级到了最新版,在未升级之前发一次测试环境要7分钟以上。升级之后发一次测试环境大概2分钟到3分钟左右。这次升级主要还是为了vue3.0,哈哈。希望赶紧来吧vue3.0。
如果您觉得阅读本文对您有帮助,请点一下推荐按钮,您的推荐将是我最大的写作动力,欢迎各位转载!
分类:
vue
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!