Композиции на задачи во Gulp

Задачите во Gulp може да се комбинираат во групи (композиции), каде што задачите ќе се извршат последователно или паралелно.

Ајде да погледнеме како се прави ова. За пример да ги земеме следните задачи:

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

Секвенцијално извршување

За секвенцијално извршување на задачи е наменета функцијата series. Оваа функција како параметри прифаќа било кој број на задачи и ги извршува нив една по една по редоследот на наведување.

За почеток оваа функција треба да се импортира од библиотеката Gulp:

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

Сега можеме да ја искористиме оваа функција:

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

exports.default = taskD;

Може директно да се експортира резултатот од работата на series, без создавање на дополнителна функција за јавна задача:

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

Создадете три задачи, кои се извршуваат последователно една по друга.

Паралелно извршување

За паралелно извршување на задачи е наменета сличната функција parallel(). Ајде да погледнеме како таа работи.

За почеток да ја поврземе:

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

Да ја искористиме нашата функција внатре во јавната задача:

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

exports.default = taskD;

Или едноставно да го експортираме резултатот од работата:

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

Создадете три задачи, кои се извршуваат паралелно.

Комбинации

Функциите series и parallel() може да се вгнездуваат една во друга во било кои комбинации, на пример, вака:

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

Создадете пет задачи. Смислете примери на комбинации со овие задачи.