Composições de Tarefas do Gulp

As tarefas do Gulp podem ser agrupadas em composições, onde as tarefas serão executadas em série ou em paralelo.

Vamos ver como isso é feito. Para exemplo, tomemos as seguintes tarefas:

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

Execução em Série

Para a execução sequencial de tarefas, é destinada a função series. Esta função recebe como parâmetros qualquer número de tarefas e as executa uma por vez, na ordem em que são listadas.

Primeiro, esta função precisa ser importada da biblioteca Gulp:

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

Agora podemos usar esta função:

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

exports.default = taskD;

Também é possível exportar diretamente o resultado de series, sem criar uma função extra para a tarefa pública:

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

Crie três tarefas que sejam executadas sequencialmente, uma após a outra.

Execução em Paralelo

Para a execução paralela de tarefas, é destinada a função análoga parallel(). Vamos observar seu funcionamento.

Primeiro, vamos conectá-la:

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

Vamos usar nossa função dentro de uma tarefa pública:

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

exports.default = taskD;

Ou simplesmente exportar o resultado do seu trabalho:

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

Crie três tarefas que sejam executadas em paralelo.

Combinações

As funções series e parallel() podem ser aninhadas uma dentro da outra em qualquer combinação, por exemplo, assim:

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

Crie cinco tarefas. Pense em exemplos de combinações com essas tarefas.