如何创建"重建" gulp的任务?

时间:2017-03-17 19:09:29

标签: node.js npm gulp

gulp.task('build', function () {
  // Build, generate files...
});

gulp.task('clear', function () {
  // Delete generated files.
});

gulp.task('rebuild', function () {
  // First: clear
  // Then: build
});

在大多数情况下," build"任务不需要删除以前生成的文件(这会减慢构建过程)。

但有时候我想跑步"清楚"和"构建"一个命令中的任务:

当然"重建"任务取决于"清除"和" build",但如果我使用依赖性提示,如

gulp.task('rebuild', ['clear', 'build']);

这两个任务是异步运行的,这会导致意外问题!

解决此问题的简便方法是:

gulp clear
gulp build

但只有一个命令

gulp rebuild

更容易,对吗? :P

顺便说一下,gulp.series()已被弃用......

2 个答案:

答案 0 :(得分:1)

它并不完美但应该奏效。将构建任务提取到函数中。然后在构建和重建任务中执行。

var build = function() {
    return gulp.src().concat();
}

gulp.task('build', function () {
  return build();
});

gulp.task('clear', function () {
  // Delete generated files.
});

gulp.task('rebuild', ['clear'], function () {
  return build();
});

答案 1 :(得分:0)

我的解决方案不是按照您的要求通过Gulp,但NPM可能是更好的选择,因为您可能在那里使用NPM。你所要做的就是保存一些按键。

添加一个NPM脚本“rg”(rebuild-gulp),它可以满足您的需求:

"scripts": {
  "rg": "gulp clear && gulp build"
}

使用npm run rg

进行调用