Compoziții de task-uri Gulp

Task-urile Gulp pot fi grupate în compoziții, unde task-urile vor fi executate secvențial sau paralel.

Să vedem cum se face acest lucru. Pentru exemplu, să luăm următoarele task-uri:

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

Execuție secvențială

Pentru executarea secvențială a task-urilor este destinată funcția series. Această funcție ca parametri primește oricâte task-uri și le execută pe rând, în ordinea enumerării.

Pentru început, această funcție trebuie importată din biblioteca Gulp:

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

Acum putem folosi această funcție:

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

exports.default = taskD;

Puteți exporta imediat rezultatul funcției series, fără a crea o funcție suplimentară pentru task-ul public:

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

Creați trei task-uri care se execută secvențial unul după altul.

Execuție paralelă

Pentru executarea paralelă a task-urilor este destinată funcția similară parallel(). Să vedem cum funcționează.

Mai întâi, să o conectăm:

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

Să folosim funcția noastră în interiorul task-ului public:

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

exports.default = taskD;

Sau pur și simplu exportăm rezultatul funcției:

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

Creați trei task-uri care se execută paralel.

Combinații

Funcțiile series și parallel() pot fi imbricate una în alta în orice combinații, de exemplu, astfel:

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

Creați cinci task-uri. Gândiți-vă la exemple de combinații cu aceste task-uri.