Bağımlı görevleriniz varsa , görevlerin kendilerini çalıştırmadan önce bağımlı görevlerinin tamamlanmasını beklemeleri için akışı geri döndürmeniz gerekir .
Örneğin
// without return
gulp.task('task1', function() {
gulp.src('src/coffee/*.coffee')
/* eg compile coffeescript here */
.pipe(gulp.dest('src'));
});
gulp.task('task2', ['task1'], function() {
gulp.src('src/*.js')
/* eg minfify js here */
.pipe(gulp.dest('dest'));
});
Bu örnekte beklediğiniz Task1 önce (CoffeeScript ya da her türlü derleme mesela) tamamlanmasını 2'den seçilir çalışır ... ama eklemedikçe dönüşünü - aşağıdaki örnekte olduğu gibi - o zaman değil uyumsuz senkronize çalışacak; çünkü derlenmiş CoffeeScript minified olmayacak 2'den seçilir tamamlanması görev 1 beklemiş olmayacak ve böylece derlenmiş çıkışına cevap vermem Task1 . Bu yüzden her zaman bu koşullarda geri dönmeliyiz.
// with return
gulp.task('task1', function() {
return gulp.src('**/*.coffee')
/* your operations here */
.pipe(gulp.dest('dest'));
});
gulp.task('task2', ['task1'], function() {
return gulp.src('**/*.js')
/* your operations here */
.pipe(gulp.dest('dest'));
});
Düzenleme: Buradaki tarif daha ayrıntılı açıklıyor. https://github.com/gulpjs/gulp/blob/master/docs/recipes/running-tasks-in-series.md