Чишћење фасцикле пре чувања у 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-а. Одредите који задаци треба да се извршавају узастопно, а који - паралелно.