Javascript Promises等待两个异步方法完成

时间:2017-05-19 15:19:01

标签: javascript promise es6-promise

我有以下内容:第一个服务 serviceDefinitionFactory.getServices 调用一个REST api并在数组中获取一些数据 。然后,它将其数组映射到 var services

services 然后是 maped 传递给下一个REST api服务调用的参数 这是 serviceDefinitionFactory.getMethods

我从第一个服务调用中获取数组中的数据,但是我没有从下一个获取数据,我不是在等待承诺。

这是我的不良尝试,这段代码是1.5角度控制器。

    function test (){      
        var serviceObject = {service: null, methods: null};
        var store = [];

        serviceDefinitionFactory.getServices().then( function(srvs){
            var services = srvs.data.map(function(service) {
                return ServiceFactory(service, 'trigger');
            })
            var params = {kind :"trigger" };
            services.map(function(service) {
                    serviceDefinitionFactory.getMethods(service, params).then(function(values){
                        serviceObject.service = service;
                        serviceObject.methods = values;
                        store.push(serviceObject);
                        })   
                })
            })
         console.log("ALL PROMISES RESOLVED = " + store.length);
         return store; 
     }  

我的问题是我不明白如何将参数从第一次调用传递到第二次,然后等待累积的结果。由Felix标记的重复链接假定没有参数传递。为愚蠢而道歉,但我被困住了

0 个答案:

没有答案