我认为这里的最佳答案并没有解释如何获取错误。 docs 有一个关于错误处理的部分:
gulp-uglify 如果无法缩小一个 'error' 事件
具体文件
因此,只需捕获错误并对其执行任何操作(例如登录到控制台)即可查看文件名、行号和其他信息:
uglify().on('error', console.error)
或者在更大的范围内:
gulp.task('foo', () => {
return gulp.src([
'asset/src/js/foo/*.js',
'asset/src/js/bar/*.js',
])
.pipe(uglify().on('error', console.error))
.pipe(concat('bundle.js'))
.pipe(gulp.dest('./'));
});
这给了你一个非常有用的错误!
{ GulpUglifyError: unable to minify JavaScript
at [stack trace])
cause:
{ SyntaxError: Continue not inside a loop or switch
[stack trace]
message: 'Continue not inside a loop or switch',
filename: 'ProductForm.js',
line: 301,
col: 37,
pos: 10331 },
plugin: 'gulp-uglify',
fileName:
'/asset/src/js/foo/ProductForm.js',
showStack: false }