Как объединить 2 задачи в одну?

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(), чтобы запускать нужные задачи в нужной последовательности.