在Angular 2中通知子组件有关数据更新的信息

时间:2017-02-03 15:36:17

标签: angular

在我的Angular 2应用程序中,我有一个主要组件,其中嵌入了某个子组件(特别是名为SystemDynamicsComponent)。

我将这个子组件包含在父组件中,如下所示:

<system-dynamics [sdFactors]="displayedCalculation?.getCombinedSdFactors()"></system-dynamics>

有趣的部分是传递给子组件的参数sdFactors。在子组件内部,它定义如下:

@Input() sdFactors: any[] = [];

总结一下,父组件将数据传递给子组件,如上所述。

关键是父组件使用Promise通过HTTP异步获取数据。出于某种原因,我想在完全检索到这些数据后通知子组件。

如何实现这一目标?

1 个答案:

答案 0 :(得分:1)

您可以为此添加getter和setter:

private _sdFactors: any[] = [];

@Input() 
public set sdFactor(value: any[]) {
    // sdFactor updated ! you can do something
    this._sdFactor = value;
}

public get sdFactor(): any[] {
    return this._sdFactor;
}