Kompozície úloh Gulp

Úlohy Gulp je možné zoskupiť do kompozícií, v ktorých sa úlohy vykonajú postupne alebo paralelne.

Pozrime sa, ako sa to robí. Ako príklad vezmime nasledujúce úlohy:

javascriptfunction task1(cb) {
  cb();
}
function task2(cb) {
  cb();
}

Sekvenčné vykonávanie

Pre sekvenčné vykonávanie úloh je určená funkcia series. Táto funkcia ako parametre prijíma ľubovoľný počet úloh a vykonáva ich jednu po druhej v poradí, v akom sú uvedené.

Najprv je potrebné importovať túto funkciu z knižnice Gulp:

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

Teraz môžeme použiť túto funkciu:

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

exports.default = taskD;

Výsledok práce funkcie series je možné okamžite exportovať, bez vytvárania nadbytočnej funkcie pre verejnú úlohu:

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

Vytvorte tri úlohy, ktoré sa vykonajú postupne jedna za druhou.

Paralelné vykonávanie

Pre paralelné vykonávanie úloh je určená analogická funkcia parallel(). Pozrime sa na jej fungovanie.

Najprv ju importujeme:

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

Použijeme našu funkciu vo verejnej úlohe:

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

exports.default = taskD;

Alebo jednoducho exportujeme výsledok práce:

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

Vytvorte tri úlohy, ktoré sa vykonajú paralelne.

Kombinácie

Funkcie series a parallel() je možné vkladať do seba v ľubovoľných kombináciách, napríklad takto:

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

Vytvorte päť úloh. Vymyslite príklady kombinácií s týmito úlohami.