angular - Angular 12:在继续之前等待获取所有数据
问题描述
在我的 ngOnInit 中,我想等待 fetchLists 的所有请求完成后再继续:
ngOnInit(): void {
this.fetchLists();
this.route.params.subscribe(params => {
this.doSomethingWithFetchedLists();
}
});
}
fetchLists(): void {
this.httpHandlerCached.getListsA()
.subscribe(listA => this.listA = listA);
this.httpHandlerCached.getListsB()
.subscribe(listB => this.listB = listB);
this.httpHandlerCached.getListsC()
.subscribe(listC => this.listC = listC);
}
的请求fetchListnames()
可以以任何顺序并行执行。
由于互联网连接速度较慢,我注意到列表并不总是在doSomethingWithFetchedLists
被调用之前及时获取。
因此,我怎样才能等到所有列表都被提取?
另外,我不想嵌套订阅,因为它会造成混乱。
解决方案
推荐阅读
- google-search-console - Google 控制台 - 错误:可点击元素靠得太近 - 受影响的页面:0
- perl - 如何在不调用 perl 函数的情况下测试签名违规?
- asp.net-core - 基于 .NET Framework 的 .NET Core 2.1 Web API 的授权问题
- javascript - 即使在转换为 ISO 格式后,也会出现 Moment js Deprecation 警告。我转成iso格式还是不行
- python - 在 pandas/python 中有效地解析时间格式
- c# - 将来自 Xam.Plugin.Media 5.0.1 的 imageSource 转换为 Xamarinforms 中的字节数组?
- python - 使用列表匹配包含整个单词的正则表达式
- servlets - 如何避免Java request.getQueryString() 得到转义字符串
- java - Kerberos cannot use ticket cache in Java code
- list - Groovy:使用 groupBy 求和 - 列表列表