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