【发布时间】:2018-06-02 15:38:03
【问题描述】:
这是相关代码(我用的是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 时遇到的错误:
来自 UglifyJs 的 static/js/vendor.a6271913414e87e123c2.js 中的错误 意外令牌:名称(_months) [./node_modules/calendar-js/index.js:56,0][static/js/vendor.a6271913414e87e123c2.js:90602,6]
这是违规行:
let _months = MONTHS;
(如果我将所有 let 替换为 vars,则项目构建没有问题。const 似乎不会打扰 Webpack/UglifyJS。)
我是否需要配置一些东西以便 Webpack/UglifyJS 构建包含 let 的节点模块? (我实际项目中的let 不会给我带来问题。)
【问题讨论】:
-
确保在 Uglify 之前执行 Babel 插件。
-
@skyboyer 你能说明如何在 Webpack 项目中做到这一点吗?
-
对不起,我错了:应该是
babel-loader而不是babel-plugin。见stackoverflow.com/a/45222198/2071697
标签: javascript node.js webpack vue.js uglifyjs2