@amorphine

Код в событийно-ориентированном стиле — как оформить очередь заданий?

Имеется код для генерации critical css:

module.exports = function(gulp, plugins) {
    return function () {
        var critical = require('critical'),
            settings = require("./settings.js"),
            urls = settings.urls,
            dimensions = settings.dimensions;

        dimensions.forEach(function(dimension){
            urls.forEach(function(entry){
                critical.generate({
                    src: settings.base_url + entry.url,
                    dest: settings.dest_folder + dimension.prefix + entry.name + '.css',
                    minify: true,
                    ignore: ['.big-header-wrapper', 'header.small'],
                    width: dimension.width,
                    height: dimension.height
                });
            });
        });
    };
}


Он сразу создает dimensions.lenght * urls.length заданий и ставит их в обработку. Как можно оформить код, чтобы задания шли по очереди: следующее начиналось, как только закончится предыдущее?
  • Вопрос задан
  • 153 просмотра
Решения вопроса 1
vitali1995
@vitali1995
Вместо async сейчас лучше использовать встроенный в es6 класс Promise.
https://www.youtube.com/watch?v=vNEDPtVchfw&index=...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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