如果第一个任务失败,则后续 gulp 个任务失败
Fail subsequent gulp tasks if first task fails
我的 gulpfile.js 中有默认任务,看起来像这样:
gulp.task('default', [
'jshint',
...
]);
我想做的是在任务 jshint
returns 警告时不执行其余任务。换句话说,"fail fast."
这可能吗?在我看来 default
下的任务是 运行 异步的,乱序的——不是串行的。
你需要做两件事:
- 将
fail
报告器与 jshint 一起使用,使其抛出错误而不是警告。
- 使您的其他任务依赖于
jshint
任务,以便 jshint
始终先运行。
gulp.task('default', ['js']);
gulp.task('jshint', function() {
return gulp.src('*.js')
.pipe(jshint(opts))
.pipe(jshint.reporter('default'))
.pipe(jshint.reporter('fail'));
});
gulp.task('js', ['jshint'], function() {
//somethin
});
我的 gulpfile.js 中有默认任务,看起来像这样:
gulp.task('default', [
'jshint',
...
]);
我想做的是在任务 jshint
returns 警告时不执行其余任务。换句话说,"fail fast."
这可能吗?在我看来 default
下的任务是 运行 异步的,乱序的——不是串行的。
你需要做两件事:
- 将
fail
报告器与 jshint 一起使用,使其抛出错误而不是警告。 - 使您的其他任务依赖于
jshint
任务,以便jshint
始终先运行。
gulp.task('default', ['js']);
gulp.task('jshint', function() {
return gulp.src('*.js')
.pipe(jshint(opts))
.pipe(jshint.reporter('default'))
.pipe(jshint.reporter('fail'));
});
gulp.task('js', ['jshint'], function() {
//somethin
});