Gulp Task Kompositionen
Gulp-Tasks können zu Gruppen (Kompositionen) zusammengefasst werden, deren Tasks sequenziell oder parallel ausgeführt werden.
Schauen wir uns an, wie das gemacht wird. Nehmen wir als Beispiel die folgenden Tasks:
function task1(cb) {
cb();
}
function task2(cb) {
cb();
}
Sequenzielle Ausführung
Für die sequenzielle Ausführung von Tasks ist die
Funktion series vorgesehen. Diese Funktion akzeptiert
beliebig viele Tasks als Parameter und führt sie
der Reihe nach in der aufgezählten Reihenfolge aus.
Zuerst muss diese Funktion aus der Gulp-Bibliothek importiert werden:
const { series } = require('gulp');
Nun können wir diese Funktion verwenden:
function taskD(cb) {
series(task1, task2);
cb();
}
exports.default = taskD;
Man kann das Ergebnis der
series-Funktion auch direkt exportieren,
ohne eine extra Funktion für den öffentlichen Task
zu erstellen:
exports.default = series(task1, task2);
Erstellen Sie drei Tasks, die nacheinander hintereinander ausgeführt werden.
Parallele Ausführung
Für die parallele Ausführung von Tasks ist die
ähnliche Funktion parallel() vorgesehen. Schauen wir
uns ihre Funktionsweise an.
Verbinden wir sie zuerst:
const { parallel } = require('gulp');
Verwenden wir unsere Funktion innerhalb eines öffentlichen Tasks:
function taskD(cb) {
parallel(task1, task2);
cb();
}
exports.default = taskD;
Oder exportieren wir einfach das Ergebnis:
exports.default = parallel(task1, task2);
Erstellen Sie drei Tasks, die parallel ausgeführt werden.
Kombinationen
Die Funktionen series und parallel()
können in beliebigen Kombinationen ineinander verschachtelt werden,
zum Beispiel so:
exports.default = series(task1, parallel(task2, task3));
Erstellen Sie fünf Tasks. Denken Sie sich Beispiele für Kombinationen mit diesen Tasks aus.