以角度合并来自多个服务的多个组件的结果

时间:2018-02-21 00:27:47

标签: angular angular-services angular-components

我有一个场景,我在app组件中有两个子组件。两个子组件都使用两种不同的服务来获得结果。我想在各个组件的onInit中执行这些服务,并独立加载两个组件。是否可以使用forkjoin?任何人都可以给我一个简单的例子吗?

1 个答案:

答案 0 :(得分:0)

不,你不能。如果您想知道两个呼叫何时完成,您可以向父母发出一个可观察的信息。所以,你的父母可以像

<app-component1 (finish)="sendData($event,0)"></app-component1>
<app-component2 (finish)="sendData($event,1)"></app-component2>

data:any[];
sendData(data:any,value:number)
{
   this.data[value]=data;
   if (this.data[0] && this.data[1])
     console.log("The two component received data")
}

请参阅https://angular.io/guide/component-interaction#parent-listens-for-child-event