Gulp watch:有条件地运行依赖于event.type的任务

时间:2015-10-07 22:08:07

标签: javascript gulp watch

我有以下内容:

gulp.watch('src/**/*', ['compile']);
gulp.watch('src/**/*', (event) => {
  if (event.type === 'deleted' {
    gulp.src(event.path.replace('src/', 'compiled/')).pipe(clean());
  } else {
    // TODO: Only run 'compile' when file is not deleted.
  }
});

每当添加或修改文件时,我都希望运行compile任务,该任务将获取新文件并将其移动到编译目录中。

每当删除文件时,我都不想运行compile任务,因为它什么都不做。相反,我需要从编译目录中删除该文件。

以上代码有效,但在删除文件时继续运行编译任务(导致无操作)。

如何有条件地运行其他任务?看起来已删除和/或弃用了runstart Gulp方法。

1 个答案:

答案 0 :(得分:0)

您可以在任务中包含{read:false}

gulp.task('default', function () {
    return gulp.src('app/tmp', {read: false})
        .pipe(clean());