【发布时间】:2017-10-22 20:37:40
【问题描述】:
这是我的要求。我的代码调用了一个返回 json 对象的网络服务器(让我们称之为http://myapi/:id)。
我的网站是一个离子应用程序,调用此 api 服务器 'n' 次。 'n' 的值是用户定义的。
期望每个 api 调用必须在下一次 api 调用之前完全执行,并且返回的 json 对象需要在运行下一次 api 调用之前传递一组条件。如果 json 对象未能通过条件检查,则 for 循环的执行将停止。
代码应如下所示。
getObjects(count: number){
for(i = 0; i < count; i++){
myapi.get().then(val=>{
if(val.flag == true){
;
}else{
break;
}
})
}
}
getObjects(10);
【问题讨论】:
-
经过大量试验和错误并阅读了异步等待、异步生成器等。这就是我已经解决的问题。
-
你有什么问题?
-
@Code-Apprentice 大声笑我是不是很困惑!好吧,我有一个需要获取数据的新闻提要。当我发出 get req 时,每个新闻项都作为 json 对象接收。
-
需要的是我希望在发送下一个 get 请求之前完成一个 get 请求。只是不希望服务器被获取请求淹没,而且可能没有任何消息可以显示。此数据是返回的 json 的一部分。所以我必须在进行下一个 get 调用之前评估 json。因为 for 和 while 循环是同步的。他们没有用。我也尝试使用等待。但这不起作用。
标签: javascript for-loop asynchronous