從下面的代碼,我試圖解決後ONLY遊戲對象已經從API循環填充它的數據如果是有道理的承諾,但它一直顯示空:只有在變量填滿後才解析承諾?
{
info: summoner,
matchIds: { << used for loop below
0: matchIds['matches'][0].matchId,
1: matchIds['matches'][1].matchId,
2: matchIds['matches'][2].matchId,
3: matchIds['matches'][3].matchId,
4: matchIds['matches'][4].matchId,
5: matchIds['matches'][5].matchId,
6: matchIds['matches'][6].matchId,
7: matchIds['matches'][7].matchId,
8: matchIds['matches'][8].matchId,
9: matchIds['matches'][9].matchId
}
}
var getMatches = function(summoner) {
var promise = new Promise(function(resolve, reject){
var opt = {};
var games = {}; << object needs to be filled
for (var val in Object.keys(summoner['matchIds'])) {
var match = summoner['matchIds'][val];
opt.id = match;
api.getMatchById(opt, function(err, game) {
games[x] = game;
})
}
console.log(games);
resolve({games});
});
return promise;
};
@Evant - 這是否回答了您的問題? – jfriend00