1
我有一個Gulp
任務,在將它們注入到HTML頁面之前先對Javascript文件進行處理。如果發現linting錯誤,我希望文件不被注入。因此,如果第一個任務中出現錯誤,請取消所有後續任務。如何暫停一系列任務,但繼續在Gulp中觀看文件?
需要注意的是,這個任務是由gulp.watch
運行的,我希望手錶能夠繼續監視這些文件並在注入錯誤時解決這些問題。
這可能在gulp
?插件是可以接受的。
Gulpfile
如下:
var gulp = require('gulp');
var runSequence = require('run-sequence');
//(plugin declarations removed for brevity)
gulp.task('eslint', function() {
return gulp.src(config.lint)
.pipe($.cached('eslint'))
.pipe($.eslint())
.on('error', $.gutil.log)
.pipe($.eslint.format());
});
gulp.task('inject:resources', function() {
return gulp.src(config.src.templates)
.pipe(
$.inject(gulp.src(config.dist.scripts + '/all*.js',
{read: false}),
{
ignorePath: config.dist.public,
addRootSlash: false,
name: 'scripts'
}
))
.pipe(gulp.dest(config.dist.public));
});
gulp.task('watch:js', function(callback) {
runSequence('eslint', 'inject:resources');
});
gulp.task('watch', function() {
gulp.watch(config.src.scripts, ['watch:js']);
});
這是有效的 - 謝謝你斯文。 – Ash