首页 > 解决方案 > 如何在异步函数 A 和 B 完成后启动我的异步函数 C?

问题描述

我正在做一个 Angular 项目,在一个特定的组件中,我有 3 个异步函数: A) async getUser(),它从数据库中检索用户数据;B) async getCompany(),从数据库中检索公司数据;C) async existsByUserAndCompany(),它获取之前检索的用户 ID 和公司 ID,并在数据库中查找用户和公司之间可选的过去交互。

这 3 个函数中的每一个都会调用 Spring 数据库,因此它们订阅了 Observable。

所有三个函数都在 ngOnInit() 中调用,但第三个函数只有在其他两个函数完成后才能工作。我希望函数 A 和函数 B 同时工作,以提高我的应用程序的速度。如何让函数 C 等待 A 和 B?

编辑: Promise.all([functionA(), functionB()]) 不起作用,我认为因为我应该等待方法内部的订阅,而不是方法本身。

标签: javascriptangulartypescriptfunctionasynchronous

解决方案


推荐阅读