JSFiddle - React, Tailwind, and code Playground

by gschutz

JavaScript

// FIXME
// $q.all workaround

function Qall(obj) {
    var deferred = $q.defer();
    var i = 0;
    var keys = _.keys(obj);
    var results = {};

    function _next(o) {
        console.log(keys[i], obj[keys[i]]);

        if (!keys[i]) {
            return deferred.resolve(results);
        }
        i += 1;
        o.then(function(res) {
            results[keys[i]] = res;
            _next( obj[keys[i]] );
        });
    }

    _next( obj[keys[i]] );

    return deferred.promise;
}