您好,我对angular有点陌生,在加载数据时遇到了麻烦。在下面的代码片段中,有两个服务被调用。在每个服务中,我都会向控制台输出一些内容。在两个服务都运行之后,我有了一段代码,可以将我的订单号另外输出到控制台。但是每次我运行这个。它通过ngOnInit进行了扩展,并将以下信息显示在控制台中。我如何告诉最后一个控制台输出等待直到前两个服务完全完成。
仓库长18]
ngOnInit(): void { //called first this.dataService.sendGetRequest().subscribe((data: any[]) => { this.orderInfoList = data; console.log("array of depots "+ this.orderInfoList.depots[1].name); console.log("length of depots "+ this.orderInfoList.depots.length); }) //called second this.dataService.getOrder(+this.orderId).subscribe((data: any[]) => { this.order = data; console.log("order " + this.order.orderNumber); }) //entered last console.log("order " + this.order.orderNumber);
}
您好,我对angular有点陌生,在加载数据时遇到了麻烦。在下面的代码片段中,有两个服务被调用。在每个服务中,我都会向控制台输出一些内容。 ...
数据服务功能是异步的,因此您需要异步运行它们。由于getOrder
不依赖于sendGetRequest
的结果,因此可以使用forkJoin
并行运行它们。