gpt4 book ai didi

javascript - 来自 UglifyJs 的 bundle.js 中的错误

转载 作者:数据小太阳 更新时间:2023-10-29 04:33:15 24 4
gpt4 key购买 nike

我已经完成了一个项目,现在是构建它的时候了。我正在使用一个样板项目,但仍然不完全理解幕后发生的所有 npm/webpack 事情。运行“npm start”时,我收到错误:

ERROR in bundle.js from UglifyJs
SyntaxError: Unexpected token: punc ()) [bundle.js:848,29]

在网上搜索这个问题一个小时后,我仍然无法解决它。据我了解,这个问题的发生是因为 Uglify 还不喜欢 ES2016。但是,我在 Internet 上找到的解决方案似乎不起作用,或者对我来说实现起来意义不大。

我找到了这个 stackoverflow question并将我项目的 package.json 文件中的 webpack 行更改为:

"webpack": "fulls1z3/webpack#v2.1.0-beta.27-harmony"

但这没有用。 fork webpack 的另一个建议目前超出了我的理解范围。

我还尝试按照另一个建议在我的 src 文件夹上运行 babel,但似乎没有做任何事情,或者我运行不正确。

有没有人有解决这个问题的好方法?我现在很困,没有时间从头开始学习 npm/webpack 以完全掌握正在发生的事情。

非常感谢!

最佳答案

是的,UglifyJS 只支持 ES5 语法。您需要正确配置 Babel 才能将源代码转换为 ES5 语法。

由于您使用的是 Webpack 2,因此您需要的最低 Babel 配置是:

{
"presets": [
["es2015", {"modules": false}]
]
}

这将需要 babel-preset-es2015预设。将以上内容放入 .babelrc 中,您的 babel-loader 将处理其余部分。

或者,您可以尝试 babelify ,这是 Babel 的现代压缩器,支持 ES6 语法。如果您的目标是新版本,我会衷心推荐。

关于javascript - 来自 UglifyJs 的 bundle.js 中的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41254538/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com