Gulpда сақлашдан олдинги папкани тозалаш
Сиз аниқ ўзингиз қайд этгансизки, Gulp файлларни папкага сақлаганда, ундан олдинги файлларни ўчирмайди.
Бунга эришиш учун махсус плагин del ни ўрнатиш керак.
Уни қуйидаги буйруқни бажариб ўрнатамиз:
npm install del --save-dev
Бу плагин биз илгари ишлатганлардан фарқли
бўлиб, у методлар зanjири pipe дан ташқарида ишлатилади.
Шу сабабдан, бу ҳолда биз вазифалар гуруҳини яратишимиз
керак: биринчи вазифа папкани тозалаш учун бўлади,
иккинчиси эса фойдали ишни бажаради.
Мисол учун фойдали иш сифатида CSS ни минимизация қилишни танлаймиз.
Керакли ҳамма нарсани улаймиз:
let {src, dest, series} = require('gulp');
let cleanCSS = require('gulp-clean-css');
let del = require('del');
dist папкасини тозалаш учун вазифа яратамиз:
function taskDel(cb) {
return del('dist/*');
}
CSS ни минимизация қилиш учун вазифа яратамиз:
function taskCss(cb) {
return src('src/*.css')
.pipe(cleanCSS())
.pipe(dest('dist'));
}
Вазифалар сериясини бажарамиз:
exports.default = series(taskDel, taskCss);
Ҳаммасини бирлаштириб, қуйидаги кодни оламиз:
function taskDel(cb) {
return del('dist/*');
}
function taskCss(cb) {
return src('src/*.css')
.pipe(cleanCSS())
.pipe(dest('dist'));
}
exports.default = series(taskDel, taskCss);
JavaScript ни минимизация қилиш учун вазифа яратинг. Вазифани ҳар ишга туширишдан олдин папкани тозаланг.
Учта вазифадан иборат гуруҳ яратинг: папкани тозалаш учун вазифа, CSS ни минимизация қилиш учун вазифа ва JavaScript ни минимизация қилиш учун вазифа. Қайси вазифалар кетма-кет, қайсилари эса параллел бажарилиши кераклигини аниқланг.