我在运行此命令时遇到错误
gulp.task('minify', function () {
return gulp
.src('public/app/js/myapp.bundle.js')
.pipe(uglify())
.pipe(gulp.dest('public/app/js/myapp.bundle.min.js'));
});
Run Code Online (Sandbox Code Playgroud)
GulpUglifyError:无法缩小JavaScript引起:SyntaxError:意外的标记:name(MenuItem)(行:1628,col:18,pos:53569)
该位置的代码就是这个
setters: [],
execute: function () {
class MenuItem { // <-- line 1628
Run Code Online (Sandbox Code Playgroud)
怎么了?
Str*_*ior 47
UglifyJS 目前不支持像类这样的 EcmaScript 6结构.
您可能需要首先通过转发器步骤运行JavaScript,或者找一个知道如何处理ES6代码的缩小器.
旨在与ES6协同工作的UglifyJS分支现已发布uglify-es于npm.
'terser'是新的'uglify-es'.'uglify-es'不再维护.
https://www.npmjs.com/package/gulp-terser
npm install gulp-terser --save-dev
Run Code Online (Sandbox Code Playgroud)
如果您遇到这个问题,你有其实是一个transpiler一步通天塔一样,请确保您在您正确的巴贝尔预设.babelrc文件。否则 Babel 只会让你的代码保持原样。
例如
{
"presets": ["es2015"]
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
24649 次 |
| 最近记录: |