我在这样的文件夹中有文件:
- source_a
--- file_x
--- file_y
--- file_z
- source_b
--- file_z
- dest
我希望将所有文件从source_a
复制到dest
,完成后我想将所有文件从source_b
复制到dest
,以便{{1}将被遗忘。
这是我的代码
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
它会起作用...我错过了什么?
感谢。
答案 0 :(得分:0)
为什么不创建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
任务,即可开始使用。