javascript – 如何强制gulp调用同步运行?

前端之家收集整理的这篇文章主要介绍了javascript – 如何强制gulp调用同步运行?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想要下面的gulp调用同步运行,一个接一个.但他们不遵循命令.

run-sequence节点模块在这里没有帮助,因为我没有尝试串行运行gulp任务(即它的语法类似于gulp.task(“mytask”,[“foo”,“bar”,“baz”]等等),而是如下所示串联“打电话”.

gulp.task("dostuff",function (callback) {

  gulp
    .src("...")
    .pipe(gulp.dest("...");

  gulp
    .src("...")
    .pipe(gulp.dest("...");

  gulp
    .src("...")
    .pipe(gulp.dest("...");

  callback();
});

如何使他们一个接一个地运行?

解决方法

您可以使用 async作为您的呼叫的控制流程,让他们只有一个任务,也避免您获得“金字塔效应”.所以这样的东西应该对你的用例很好:
var async = require('async');

gulp.task('yeah',function (cb) {
  async.series([
    function (next) {
      gulp.src('...')
        .pipe(gulp.dest('...')
        .on('end',next);
    },function (next) {
      gulp.src('...')
        .pipe(gulp.dest('...')
        .on('end',next);
    }
  ],cb);
});

这也将允许您有一些错误处理,并更好地针对问题发生的目标.

猜你在找的JavaScript相关文章