Кампазіцыі задач 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

Стварыце пяць задач. Прыдумайце прыклады камбінацый з гэтымі задачамі.