SaW_3D
@SaW_3D
Веб-разработчик

Как сделать последовательное выполнение тасков в GULP?

Нужно чтобы:
1) сначала в файле css выполнялась функция объединения media-queries (gulp-group-css-media-queries)
2) сжималось CSS (gulp-cssnano)

Использовал вот такой код:
gulp.task('gcmq', function () {
gulp.src(path.src.css)
.pipe(gcmq())
.pipe(gulp.dest(path.build.csstemp));
});

gulp.task('styles', function () {
gulp.src(path.src.csstemp)
.pipe(cssnano(cssNanoCfg))
.pipe(gulp.dest(path.build.css));
});

gulp.task('styles:build',
gulpSequence('gcmq', 'styles')
);

Пытался без перезаписи одного и того же файла, по-разному. В итоге 2-й таск не выполняется, как будто файл не успел создаться, чтобы к нему применилось сжатие.

Подскажите плиз как порешать данную проблему?
  • Вопрос задан
  • 250 просмотров
Пригласить эксперта
Ответы на вопрос 1
@Lebed71
Node.js Developer
Оберните каждую таску в промис, который будет резолвится в .on('end') условно говоря. И дальше выстраивайте цепочку task1.then(() => task2.then() => и так далее, тогда они будут выполняться последовательно)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы