gpt4 book ai didi

javascript - Webpack 的 UglifyJsPlugin 会抛出包含 let 的 Node 模块错误

转载 作者:行者123 更新时间:2023-12-03 02:50:14 25 4
gpt4 key购买 nike

这是相关代码(我使用的是Vue.js的Webpack官方模板):

.babelrc:

"presets": [
"babel-preset-es2015",
"babel-preset-stage-2",
]

webpack.prod.config.js

new webpack.optimize.UglifyJsPlugin({
compress: {
warnings: false,
drop_console: shouldDropConsole
},
sourceMap: true
}),

这是我执行 npm run build 时遇到的错误:

ERROR in static/js/vendor.a6271913414e87e123c2.js from UglifyJs Unexpected token: name (_months) [./node_modules/calendar-js/index.js:56,0][static/js/vendor.a6271913414e87e123c2.js:90602,6]

这是有问题的行:

let _months = MONTHS;

(如果我将所有 let 替换为 var,则项目构建不会出现问题。而 const 则不会”似乎不会打扰 Webpack/UglifyJS。)

我是否需要配置一些东西,以便 Webpack/UglifyJS 构建包含 let 的 Node 模块? (我的实际项目中的 let 不会给我带来问题。)

最佳答案

这可能是因为您可能使用的是旧版本的 node,它不支持 es6 语法。

letconst、箭头函数等都是 es6 语法的一部分。要了解更多信息,请点击此链接 http://es6-features.org/

您的其他项目可能需要旧版本的 node,因此请安装 nvm。 NVM 是一个 Node 版本管理器,它将帮助您轻松地在 Node 版本之间切换。点击链接获取文档和安装过程 https://github.com/creationix/nvm

Node v6+ 支持 ES6 语法,请尝试升级到该语法。

更新

根据此答案的评论,已确认这不是版本问题,并通过关注此 GitHub 问题线程 https://github.com/joeeames/WebpackFundamentalsCourse/issues/3 得到解决。 .

和平!

关于javascript - Webpack 的 UglifyJsPlugin 会抛出包含 let 的 Node 模块错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47899897/

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