将不同 gulp 任务中的文件复制到同一文件夹



我在这样的文件夹中有文件:

- source_a
--- file_x
--- file_y
--- file_z
- source_b
--- file_z
- dest

我想将所有文件从source_a复制到dest,完成此操作后,我想将所有文件从source_b复制到dest,以便file_z将被运行。

这是我的代码

gulp.task("myCopy", ["copy_a"], function() {
    return gulp.src('source_b').pipe(gulp.dest('dest'))
});
gulp.task("copy_a", [], function(theme) {
return [
        gulp.src('source_b').pipe(gulp.dest('dest')),
        gulp.src('other_stuff').pipe(gulp.dest('to_other_places'))
    ];
});

但最终dest中的所有文件都来自source_a......如果我再次运行copy_a单独运行它可以工作......我错过了什么?

谢谢。

为什么不创建 2 个复制任务并按顺序运行它们,如下所示:

gulp.task('copy_a', function(){
  // copy all from folder A 
  return gulp.src('source_a/**').pipe(gulp.dest('dest'))
});
gulp.task('copy_b', function(){
  // copy all from folder B
  return gulp.src('source_b/**').pipe(gulp.dest('dest'))
});
gulp.task('copy', function(cb) {
  var runSequence = require('run-sequence');
  runSequence('copy_a', 'copy_b', cb); // run in sequence
});

这样,您的copy任务按顺序运行,任务copy_b仅在copy_a完成后启动。

只需调用copy任务,您就可以上路了。

相关内容

  • 没有找到相关文章

最新更新