在我的应用程序中,我使用AngularJS和nodeJS用于rest api并且它正常工作。但是当我尝试使用for循环调用api时遇到了一些问题。实际上只有最后一组参数传递给api。
这意味着如果我使用循环3次传递不同的参数,那么只有最后一组参数传递给api 3次。第一个和第二个不发送到api。任何人都有任何想法?
以下是我在Angularjs Factory中使用的示例代码。
var firstTimeData = {
"firstid": serializedJsonData.firstid,
"secondid": serializedJsonData.secondid,
"otherid": serializedJsonData.otherid
}
for (var i = 0; i < data[0].length; i++) {
for (var j = 0; j <= 2; j++) {
firstTimeData.dshdetailid = data[i][j].dshdetailid;
if ((data[i][j].defaultTitle).trim() == 'Scorecard Graph') {
BlankApi.getData(firstTimeData, 'slide' + j, 'periodname', 'amount');
}
}
}
答案 0 :(得分:0)
要解决此问题,您必须在循环中进行异步调用,
这里的循环代码连续执行而不等待每个api调用完成。
Refer this post to get idea about how to use asynchronous calls in loop