Promise.all()不使用angularjs

时间:2017-04-13 09:34:27

标签: javascript angularjs angular-promise

我有一个VPService.requestQueue,它是一个包含以下内容的对象数组:

enter image description here

我需要在所有承诺完成后做一些事情,所以我使用的是Promise.all(VPService.requestQueue).then(...),但它不起作用。

我尝试创建cancellerpromise的数组,然后在两个上调用Promise.all(),然后在Promise.all()内的两个console.logs之前调用收到承诺的答复。

        //getting an array of the promises from VPService.requestQueue
        var requestQueuePromises = VPService.requestQueue.map(function (queue) {
            return queue.canceller.promise;
        });
        //gettin array of cancellers
        var requestQueueCancellers = VPService.requestQueue.map(function (queue) {
            return queue.canceller;
        });

现在使用Promise.all()来了解承诺何时结束,但是在收到承诺结果之前,两个console.log都被打印出来。

        Promise.all(requestQueueCancellers).then(function () {
            console.log("After all cancellers")
        });
        Promise.all(requestQueuePromises).then(function () {
            console.log("After all promises")
        });

0 个答案:

没有答案