TypeError:无法读取未定义的属性“javascript”+ terser webpack 插件+ react js

Posted

技术标签:

【中文标题】TypeError:无法读取未定义的属性“javascript”+ terser webpack 插件+ react js【英文标题】:TypeError: Cannot read property 'javascript' of undefined + terser webpack plugin + react js 【发布时间】:2021-02-07 18:32:27 【问题描述】:

我最近添加了 terser-webpack-plugin 来缩小我的 create react app 代码。但是在构建项目时,我遇到了类似TypeError: Cannot read property 'javascript' of undefined 的错误。以下是来自我的控制台的一些日志。请让我知道任何解决方法或更改以修复它。

控制台日志:

D:\a>npm run build:qa
> a@1.0.0 build:qa D:\a
> cross-env webpack --env.ENVIRONMENT=qa --config ./webpack.config.js --mode production --progress --colors
D:\a\node_modules\terser-webpack-plugin\dist\index.js:400
      const hooks = compiler.webpack.javascript.JavascriptModulesPlugin.getCompilationHooks(compilation);
                                     ^
TypeError: Cannot read property 'javascript' of undefined
    at D:\a\node_modules\terser-webpack-plugin\dist\index.js:400:38

我正在使用的 webpack 版本:

"webpack": "^4.44.1",
"webpack-cli": "^3.3.12",
"webpack-dev-server": "^3.11.0"

【问题讨论】:

this is explain,Please review the version carefully 【参考方案1】:

您好,您使用的是 Webpack 4 和 Terser ^5.0.0。这个版本的 Terser 是针对 Webpack 5 的,你需要在 package.json 文件中设置版本 "terser-webpack-plugin": "^4.2.3",

【讨论】:

你的回答也解决了我的问题!非常感谢!!!

以上是关于TypeError:无法读取未定义的属性“javascript”+ terser webpack 插件+ react js的主要内容,如果未能解决你的问题,请参考以下文章

TypeError:无法读取未定义的属性“findAll”(expressjs)

TypeError:无法读取未定义的属性(读取“问题”)

TypeError:无法读取未定义的属性“babel”

TypeError:无法读取未定义的属性(读取“匹配”):

TypeError:无法读取未定义的属性“存在”

TypeError:无法在 gitlab 中读取未定义的属性(读取“读取”)