Gulp.js — это инструмент для автоматизации задач веб-разработки. Он позволяет автоматизировать такие действия, как компиляция препроцессоров CSS, сборка и минификация JavaScript, оптимизация изображений и многое другое. Одним из важных аспектов Gulp.js является возможность создания задач, которые можно объединять в одну.
Чтобы объединить две задачи в одну, необходимо использовать метод Gulp.js series()
или parallel()
. Метод series()
выполняет задачи последовательно, в то время как метод parallel()
запускает задачи параллельно.
Предположим, у нас есть две задачи, task1
и task2
. Для того чтобы объединить их в одну задачу, создадим новую задачу combinedTask
.
const gulp = require('gulp'); function task1() { return gulp.src('src/css/**/*.css') .pipe(/* some gulp plugins */) .pipe(gulp.dest('dist/css')); } function task2() { return gulp.src('src/js/**/*.js') .pipe(/* some gulp plugins */) .pipe(gulp.dest('dist/js')); } // объединение задач в одну function combinedTask() { return gulp.series(task1, task2)(); } exports.task1 = task1; exports.task2 = task2; exports.combinedTask = combinedTask;
В примере выше, функции task1
и task2
представляют собой две отдельные задачи, каждая из которых выполняет определенные действия. Далее, создаем функцию combinedTask
, которая использует метод series()
для запуска задач task1
и task2
последовательно.
Теперь вы можете запустить команду gulp combinedTask
в терминале, чтобы запустить каждую задачу последовательно. При этом задача task1
будет выполнена в первую очередь, а затем задача task2
.
Вместо метода series()
можно также использовать метод parallel()
для запуска задач параллельно:
function combinedTask() { return gulp.parallel(task1, task2)(); }
Если вы запустите команду gulp combinedTask
с использованием метода parallel()
, обе задачи будут выполняться параллельно.
В итоге, объединение двух задач в одну с помощью Gulp.js может быть достигнуто простым созданием новой задачи, используя методы series()
или parallel()
, чтобы запускать нужные задачи в нужной последовательности.