Kompozicije zadataka Gulp
Zadatke u Gulp-u možemo kombinovati u grupe (kompozicije), gde će zadaci biti izvršeni sekvencijalno ili paralelno.
Hajde da pogledamo kako se to radi. Za primer ćemo uzeti sledeće zadatke:
function task1(cb) {
cb();
}
function task2(cb) {
cb();
}
Sekvencijalno izvršavanje
Za sekvencijalno izvršavanje zadataka namenjena je
funkcija series. Ova funkcija kao parametre
prihvata bilo koji broj zadataka i izvršava
ih redom, onim redosledom kojim su navedeni.
Za početak, ovu funkciju treba importovati iz Gulp biblioteke:
const { series } = require('gulp');
Sada možemo koristiti ovu funkciju:
function taskD(cb) {
series(task1, task2);
cb();
}
exports.default = taskD;
Možemo odmah eksportovati rezultat rada
series, bez kreiranja dodatne funkcije
za javni zadatak:
exports.default = series(task1, task2);
Kreirajte tri zadatka koji se izvršavaju sekvencijalno jedan za drugim.
Paralelno izvršavanje
Za paralelno izvršavanje zadataka namenjena je
slična funkcija parallel(). Hajde da
pogledamo kako ona radi.
Za početak je povežimo:
const { parallel } = require('gulp');
Koristimo našu funkciju unutar javnog zadatka:
function taskD(cb) {
parallel(task1, task2);
cb();
}
exports.default = taskD;
Ili jednostavno eksportujemo rezultat rada:
exports.default = parallel(task1, task2);
Kreirajte tri zadatka koji se izvršavaju paralelno.
Kombinacije
Funkcije series i parallel()
mogu biti ugnježdene jedna u drugu u bilo kojoj kombinaciji,
na primer, ovako:
exports.default = series(task1, parallel(task2, task3));
Kreirajte pet zadataka. Osmislite primere kombinacija sa ovim zadacima.