Composition de tâches Gulp
Les tâches Gulp peuvent être regroupées en compositions (compostions), dans lesquelles les tâches seront exécutées séquentiellement ou en parallèle.
Voyons comment cela se fait. Pour exemple, prenons les tâches suivantes :
function task1(cb) {
cb();
}
function task2(cb) {
cb();
}
Exécution séquentielle
Pour l'exécution séquentielle des tâches, la fonction
series est destinée. Cette fonction prend comme paramètres
un nombre quelconque de tâches et les exécute
l'une après l'autre dans l'ordre d'énumération.
Pour commencer, cette fonction doit être importée de la bibliothèque Gulp :
const { series } = require('gulp');
Maintenant, nous pouvons utiliser cette fonction :
function taskD(cb) {
series(task1, task2);
cb();
}
exports.default = taskD;
On peut exporter immédiatement le résultat du travail
de series, sans créer de fonction supplémentaire
pour la tâche publique :
exports.default = series(task1, task2);
Créez trois tâches s'exécutant séquentiellement l'une après l'autre.
Exécution parallèle
Pour l'exécution parallèle des tâches, la fonction
similaire parallel() est destinée. Regardons
son fonctionnement.
Commençons par l'importer :
const { parallel } = require('gulp');
Utilisons notre fonction à l'intérieur d'une tâche publique :
function taskD(cb) {
parallel(task1, task2);
cb();
}
exports.default = taskD;
Ou exportons simplement le résultat du travail :
exports.default = parallel(task1, task2);
Créez trois tâches s'exécutant en parallèle.
Combinaisons
Les fonctions series et parallel()
peuvent être imbriquées l'une dans l'autre dans n'importe quelle combinaison,
par exemple, comme ceci :
exports.default = series(task1, parallel(task2, task3));
Créez cinq tâches. Trouvez des exemples de combinaisons avec ces tâches.