2014-10-20 7 views
8

Hat jemand eine Lösung für das automatische Ausführen von "Teilaufgaben" in Schluck?Teilausführung ohne explizite Definition

Ich bin neu zu schlucken, und zur Zeit meine schluck-Datei wie folgt strukturiert:

gulp.task('build:ccss', function(cb) { 
    ... 
} 

gulp.task('build:js', function(cb) { 
    ... 
} 

gulp.task('build:img', function(cb) { 
    ... 
} 

gulp.task('build:index', function(cb) { 
    ... 
} 

Und dann explizit definiere ich die Aufgabe Basis und haben sie die Unteraufgaben ausführen:

gulp.task('build', ['build:scss', 'build:js', 'build:img', 'build:index']); 

I Verwenden Sie diese Struktur für mehrere "Gruppen" von Aufgaben: Reinigen, Bauen, Linting.

Ich bin gespannt, ob jemand eine Lösung für die automatische Ausführung von Teilaufgaben hat, wenn die Basis-Task ausgeführt wird, ohne eine explizite Definition wie ich habe zu erstellen.

Antwort

2

könnten Sie verwenden async (oder eine andere Steuerfluss-Bibliothek) auf diese Weise:

var async = require('async'); 

gulp.task('build', function (callback) { 
    async.series([ 
    function (cb) { 

     // example usage should be your build:scss task, 
     // notice the call of `cb` on end event 

     gulp.src('package.json') 
     .pipe(gulp.dest('test/')) 
     .on('end', cb); 
    }, 
    function (cb) { 
     // same thing with the content of your build:js 
    }, 

    // all your other tasks 

    ], callback); 
});