我可以使用 TypeScript 等待异步操作循环在同步函数内完成吗?

用户8816462

我有一个 foreach 循环,它执行许多接收数据并呈现表格的异步函数。我想在所有异步之后调用第二个函数。foreach 循环中的调用已完成并呈现表。

安德鲁·谢泼德

是的你可以。将您称为 Promise 的每个操作都进行一遍。将所有这些承诺保存为一个数组,然后调用Promise.all

const promises:Promise<{}>[] = [];
myWhatever.forEach(
    item => {
         const promise = new Promise<{}>(
             (resolve, reject) => {
                 // Do something which ends up with resolve getting called
                 // at some point
             }
         );
         promises.push(promise);
    }
);
Promise.all(promises)
   .then(
      () => {
          // Perform your post render tasks here
      }
    );

您可以通过替换forEachmap 来进一步简化

const promises = myWhatever.map(
    item =>
        new Promise<{}>(
             (resolve, reject) => {
                 // Do something which ends up with resolve getting called
                 // at some point
             }
        )
);
Promise.all(promises)
   .then(
      () => {
          // Perform your post render tasks here
      }
    );

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何停止Typescript中的forEach循环-我可以使用.some()吗?

来自分类Dev

如何停止Typescript中的forEach循环-我可以使用.some()吗?

来自分类Dev

我可以使用 TypeScript 验证某个值是否在枚举条件内吗?

来自分类Dev

TypeScript:我可以使用“ import * from”和“ require(*)”混合使用吗?

来自分类Dev

我可以使用Typescript以更紧凑的方式创建服务吗?

来自分类Dev

我可以使用Typescript泛型来过滤对象中的键吗?

来自分类Dev

我可以使用Visual Studio Community 2015进行TypeScript开发吗?

来自分类Dev

我可以使用 SUMPRODUCT 来完成此操作吗?

来自分类Dev

TypeScript中可以使用通用类型别名吗?

来自分类Dev

可以使用Babel转换为TypeScript吗?

来自分类Dev

TypeScript中可以使用编译时标记的数字吗?

来自分类Dev

我可以使用for循环等待网络浏览器完成导航吗?

来自分类Dev

异步函数JS问题。我可以使用Promises吗?

来自分类Dev

我可以使用sed的&变量在$()内执行操作吗?

来自分类Dev

我可以使用python CSP吗?

来自分类Dev

我可以使用迭代器吗?

来自分类Dev

我可以使用通配符替换吗

来自分类Dev

我可以使用RTF格式吗?

来自分类Dev

骨骼可以使用我的插件吗?

来自分类Dev

我可以使“转到定义”跳转到Visual Studio 2013中的TypeScript代码吗?

来自分类Dev

我可以使用JS等待多个CSS动画吗?

来自分类Dev

Azure WebJobs-我可以使用异步方法吗?

来自分类Dev

Azure WebJobs-我可以使用异步方法吗?

来自分类Dev

我可以使用<< EOF但让用户完成输入吗

来自分类Dev

是否可以重构TypeScript中的这种循环依赖关系,以便可以使用单独的TypeScript文件?

来自分类Dev

我可以使用内联操作按钮创建DataTable吗?

来自分类Dev

我可以使用jquery操作<a>标记的名称属性吗?

来自分类Dev

我可以使用循环来优化代码吗?

来自分类Dev

我可以使用OTL并行化嵌套循环吗?

Related 相关文章

  1. 1

    如何停止Typescript中的forEach循环-我可以使用.some()吗?

  2. 2

    如何停止Typescript中的forEach循环-我可以使用.some()吗?

  3. 3

    我可以使用 TypeScript 验证某个值是否在枚举条件内吗?

  4. 4

    TypeScript:我可以使用“ import * from”和“ require(*)”混合使用吗?

  5. 5

    我可以使用Typescript以更紧凑的方式创建服务吗?

  6. 6

    我可以使用Typescript泛型来过滤对象中的键吗?

  7. 7

    我可以使用Visual Studio Community 2015进行TypeScript开发吗?

  8. 8

    我可以使用 SUMPRODUCT 来完成此操作吗?

  9. 9

    TypeScript中可以使用通用类型别名吗?

  10. 10

    可以使用Babel转换为TypeScript吗?

  11. 11

    TypeScript中可以使用编译时标记的数字吗?

  12. 12

    我可以使用for循环等待网络浏览器完成导航吗?

  13. 13

    异步函数JS问题。我可以使用Promises吗?

  14. 14

    我可以使用sed的&变量在$()内执行操作吗?

  15. 15

    我可以使用python CSP吗?

  16. 16

    我可以使用迭代器吗?

  17. 17

    我可以使用通配符替换吗

  18. 18

    我可以使用RTF格式吗?

  19. 19

    骨骼可以使用我的插件吗?

  20. 20

    我可以使“转到定义”跳转到Visual Studio 2013中的TypeScript代码吗?

  21. 21

    我可以使用JS等待多个CSS动画吗?

  22. 22

    Azure WebJobs-我可以使用异步方法吗?

  23. 23

    Azure WebJobs-我可以使用异步方法吗?

  24. 24

    我可以使用<< EOF但让用户完成输入吗

  25. 25

    是否可以重构TypeScript中的这种循环依赖关系,以便可以使用单独的TypeScript文件?

  26. 26

    我可以使用内联操作按钮创建DataTable吗?

  27. 27

    我可以使用jquery操作<a>标记的名称属性吗?

  28. 28

    我可以使用循环来优化代码吗?

  29. 29

    我可以使用OTL并行化嵌套循环吗?

热门标签

归档