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:

javascriptfunction 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:

javascriptconst { series } = require('gulp');

Nun können wir diese Funktion verwenden:

javascriptfunction 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:

javascriptexports.default = series(task1, task2);
Задание 1

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:

javascriptconst { parallel } = require('gulp');

Verwenden wir unsere Funktion innerhalb eines öffentlichen Tasks:

javascriptfunction taskD(cb) {
  parallel(task1, task2);
  cb();
}

exports.default = taskD;

Oder exportieren wir einfach das Ergebnis:

javascriptexports.default = parallel(task1, task2);
Задание 2

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:

javascriptexports.default = series(task1, parallel(task2, task3));
Задание 3

Erstellen Sie fünf Tasks. Denken Sie sich Beispiele für Kombinationen mit diesen Tasks aus.