Gulpда сақлашдан олдинги папкани тозалаш

Сиз аниқ ўзингиз қайд этгансизки, Gulp файлларни папкага сақлаганда, ундан олдинги файлларни ўчирмайди.

Бунга эришиш учун махсус плагин del ни ўрнатиш керак.

Уни қуйидаги буйруқни бажариб ўрнатамиз:

terminalnpm install del --save-dev

Бу плагин биз илгари ишлатганлардан фарқли бўлиб, у методлар зanjири pipe дан ташқарида ишлатилади. Шу сабабдан, бу ҳолда биз вазифалар гуруҳини яратишимиз керак: биринчи вазифа папкани тозалаш учун бўлади, иккинчиси эса фойдали ишни бажаради.

Мисол учун фойдали иш сифатида CSS ни минимизация қилишни танлаймиз.

Керакли ҳамма нарсани улаймиз:

javascriptlet {src, dest, series} = require('gulp');
let cleanCSS = require('gulp-clean-css');
let del = require('del');

dist папкасини тозалаш учун вазифа яратамиз:

javascriptfunction taskDel(cb) {
  return del('dist/*');
}

CSS ни минимизация қилиш учун вазифа яратамиз:

javascriptfunction taskCss(cb) {
  return src('src/*.css')
    .pipe(cleanCSS())
    .pipe(dest('dist'));
}

Вазифалар сериясини бажарамиз:

javascriptexports.default = series(taskDel, taskCss);

Ҳаммасини бирлаштириб, қуйидаги кодни оламиз:

javascriptfunction taskDel(cb) {
  return del('dist/*');
}
function taskCss(cb) {
  return src('src/*.css')
    .pipe(cleanCSS())
    .pipe(dest('dist'));
}

exports.default = series(taskDel, taskCss);
Задание 1

JavaScript ни минимизация қилиш учун вазифа яратинг. Вазифани ҳар ишга туширишдан олдин папкани тозаланг.

Задание 2

Учта вазифадан иборат гуруҳ яратинг: папкани тозалаш учун вазифа, CSS ни минимизация қилиш учун вазифа ва JavaScript ни минимизация қилиш учун вазифа. Қайси вазифалар кетма-кет, қайсилари эса параллел бажарилиши кераклигини аниқланг.