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-ის მინიმიზაციაზე. განსაზღვრეთ, რომელი დავალებები უნდა შესრულდეს თანმიმდევრულად, და რომელი - პარალელურად.