Gulp Task Kompositioner
Gulp-uppgifter kan kombineras i grupper (kompositioner), där uppgifterna utförs sekventiellt eller parallellt.
Låt oss titta på hur detta görs. För exemplet tar vi följande uppgifter:
function task1(cb) {
cb();
}
function task2(cb) {
cb();
}
Sekventiell exekvering
För sekventiell exekvering av uppgifter är funktionen
series avsedd. Denna funktion tar parametrar
vilket som helst antal uppgifter och exekverar
dem i tur och ordning i den ordning de listas.
Till att börja med måste denna funktion importeras från Gulp-biblioteket:
const { series } = require('gulp');
Nu kan vi använda denna funktion:
function taskD(cb) {
series(task1, task2);
cb();
}
exports.default = taskD;
Resultatet av
series kan omedelbart exporteras, utan att skapa en onödig funktion
för den publika uppgiften:
exports.default = series(task1, task2);
Skapa tre uppgifter som exekveras sekventiellt ena efter den andra.
Parallell exekvering
För parallell exekvering av uppgifter är
en liknande funktion parallel() avsedd. Låt oss
titta på hur den fungerar.
Låt oss först ansluta den:
const { parallel } = require('gulp');
Låt oss använda vår funktion inuti den publika uppgiften:
function taskD(cb) {
parallel(task1, task2);
cb();
}
exports.default = taskD;
Eller så kan vi helt enkelt exportera resultatet:
exports.default = parallel(task1, task2);
Skapa tre uppgifter som exekveras parallellt.
Kombinationer
Funktionerna series och parallel()
kan kapslas in i varandra i valfria kombinationer,
till exempel så här:
exports.default = series(task1, parallel(task2, task3));
Skapa fem uppgifter. Kom på exempel på kombinationer med dessa uppgifter.