Vue.js - 解决npm run build报错(TypeError: Cannot read property 'compilation' of undefined vue)
1,问题描述
最近发现使用 npm run build 命令打包项目一直失败。报如下错误:MacBook:eciot hangge$ npm run build
> eciot@1.0.0 build /Volumes/BOOTCAMP/Vue/eciot
> node build/build.js
⠋ building for production.../Volumes/BOOTCAMP/Vue/eciot/node_modules/last-call-webpack-plugin/src/index.js:170
compiler.hooks.compilation.tap(
^
TypeError: Cannot read property 'compilation' of undefined
at OptimizeCssAssetsWebpackPlugin.apply (/Volumes/BOOTCAMP/Vue/eciot/node_modules/last-call-webpack-plugin/src/index.js:170:20)
at Compiler.apply (/Volumes/BOOTCAMP/Vue/eciot/node_modules/tapable/lib/Tapable.js:375:16)

2,问题原因
这是版本问题。打开项目的 package.json 文件可以发现,webpack 是 3.6.0 的版本,但是 optimize-css-assets-webpack-plugin 是 5.0.1 的版本。
3,解决办法
执行如下命令将 optimize-css-assets-webpack-plugin 改为 3.2.0 版本即可。npm i optimize-css-assets-webpack-plugin@3.2.0