当前位置: 首页 > 知识库问答 >
问题:

如何从机场返回。从aPI获取数据的映射循环[重复]

彭鸿彩
2023-03-14

我试图在URL数组上循环,并在该URL的endpoint获取数据,然后将其作为JSON对象存储在数组中(allData)。当我运行代码并检查allData中的内容时,它是一个空数组。这告诉我,我没有正确地从机场返回。地图如果数据来自异步函数,我该如何做呢。下面是我的代码。谢谢

const allData = urls.map((url)=>{
    fetch(url)
        .then(response => response.json())
        .then((data) => {return data})
        .catch(err => console.log(err))
})   

共有1个答案

袁良弼
2023-03-14

您需要等待数组中的promise被解析,然后返回数组中的promise。映射函数

const urls = ['https://mocki.io/v1/d4867d8b-b5d5-4a48-a4ab-79131b5809b8', 'https://mocki.io/v1/d4867d8b-b5d5-4a48-a4ab-79131b5809b8']
const allData = urls.map((url)=>{
    return fetch(url)
        .then(response => response.json())
        .then((data) => {return data})
        .catch(err => console.log(err))
})   
Promise.all(allData).then(console.log)

 类似资料:
  • 我目前正在一个变量上运行,如下所示: 当我在控制台中查看时,我看到以下数据: 我想访问键,但是控制台返回。

  • 我正在开发Spring Boot应用程序与Spring Data JPA和H2数据库。我使用的是sping-data-jpa。当我使用ManyTo很多映射器类来获取另一个类的数据时。但是我发现它是NULL。 代码在github上 书班 著者班 测试中的测试代码捕捉器。班 我的代码有错误吗?或者其他方式? 非常感谢。

  • #1处的console.log生成正确的数据。console.log#2始终生成“a”; 如有任何指示,将不胜感激。

  • loop 有个用途是尝试一个操作直到成功为止。若操作返回一个值,则可能需要将其传递给代码的其余部分:将该值放在 break 之后,并由 loop 表达式返回。 fn main() { let mut counter = 0; let result = loop { counter += 1; if counter == 10 {

  • 考虑这个代码 我做了一个包装器来延迟的方法调用是否有办法从setTimeout内部的回调中检索值,即从?

  • 我试着从地图上得到这样一个随机元素 但我认为最好的方法是使用谓词 我读过这个https://docs.hazelcast.com/imdg/4.2/query/how-distributed-query-works.html#querying-with-sql-like-predicates不幸的是这对我没有帮助 我找不到办法 在sql中是这样的 如何在hazelcast中生成正确的谓词? 你能举