javascript - 如何在 React 中等待多个异步等待请求

标签 javascript reactjs asynchronous promise

我想在 React 组件中执行如下操作:

const someArray = [/*stuff*/]
const results = []
someArray.forEach(async item => {

  const result = await someAsyncFunction(item)
  results.push(result)
})

我怎么知道什么时候所有的结果都返回然后做些什么?

如果我在 AngularJS 中使用 $q,我可以这样做

var results = []
someArray.forEach(function(item) {
  var result = someAsyncFunctionThatReturnsAPromise(item);
  results.push(result);
});

$q.all(results).then(function() {
  // do something
});

最佳答案

如果它不是 React 组件,你会做同样的事情:

Promise.all(someArray.map(someAsyncFunction)).then(results => {
  // do stuff with results
});

当然你也可以用q , $q 基于。这取决于你。

关于javascript - 如何在 React 中等待多个异步等待请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46857023/

相关文章:

javascript - 在 d3.js 中嵌入 json 文件 (d3.layout.partition)

javascript - Chart.js Canvas 元素在 Chrome 60 中具有负高度和宽度

javascript - "Error watching file for changes: EMFILE"当初始化一个 react-native 项目时

reactjs - 权限不足 : Request had insufficient authentication scopes in google directory API when logging through admin

javascript - 基于 promise 的编程,可能与否?

swift - Swift3 中 Struct 和 Class 异步变异的不同过程

ios - 从 Swift 函数中的异步调用返回数据

javascript - 向大型项目添加 javascript 命名空间

javascript - 样式化选择框

reactjs - 在 React 中为大文件(超过 4kb)加载 WASM 模块的正确方法