Ачыстка тэчкі перад захаваннем у Gulp

Вы ўжо напэўна звярнулі ўвагу на тое, што пры захаванні файлаў у тэчку, Gulp не выдаляе з яе папярэднія файлы.

Каб гэта адбывалася, трэба ўсталяваць спецыяльны плагін del.

Усталюем яго, выканаўшы наступную каманду:

terminalnpm install del --save-dev

Даны плагін адрозніваецца ад выкарыстоўваных намі раней тым, што ён выкарыстоўваецца па-за ланцужком метадаў 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. Вызначце, якія задачы павінны выконвацца паслядоўна, а якія - паралельна.