嵌套的promises和promise.map

时间:2017-03-07 22:00:02

标签: javascript node.js promise

我正在使用NodeJS项目的承诺,我不知道如何让它工作。我已设法将其简化为:

function getProperties(participant, queries){
  return new Promise(function(resolve, reject){
    Promise.map(queries, function(query){
      return request.getAsync(query).then(function(response){
        return JSON.parse(response.body)['data'];
      });
    }).then(function(results){
      // process results and create rule
      resolve(rule);
    });
  }

function getParticipants(){
  return new Promise(function(resolve, reject) {
    // send a request for the list of posible participants
    for (participant in participants_list) {
      // determine which properties we need to query
      requests.push(getProperties(participant, queries))
    }
    Promise.all(requests).then(function(result){
      resolve(result);
    });
  });
}

getParticipants().then(function(rule){
  // process the rule
});

基本上,我必须确定哪些参赛者可以参加比赛,我必须请求参赛者名单,然后查询他们的属性并处理所有事情。我正在尝试使用promises,以便系统在创建其他请求之前等待请求的结果。这是我第一次使用promises,所以我很感激任何提示。

0 个答案:

没有答案