来自同级组件 angular2 的输入群体的生命周期钩子

lifecycle hooks of input population from sibling component angular2

我有两个兄弟姐妹组件如下

<broker-list (onBrokerClicked)="onBrokerClicked= $event"></broker-list>
<station-list [(broker)]="onBrokerClicked" [(ngModel)]="stations"></station-list><!--broker is an input-->

当用户点击代理列表时,在站列表组件代理中填充 @InputngModel 在站列表中 只有在 它的兄弟组件被点击后,或者换句话说,输入代理被填充。我想要从不在 ngOnInit 中的兄弟组件填充输入的确切时刻。输入人口后是否有任何事件或事情引发我可以在其中做一些事情???

将 setter 方法添加到 Input() 属性

站-list.component.ts

private _broker;

@Input() set broker(value) {
     this._broker = value
     // do the stuff every time when broker value is changed
}

get broker(value) {
     return this._broker;
}

您可以通过从 @angular/core 导入 onChanges 来使用 ngOnChanges

ngOnChanges 有什么作用? 只要输入值发生变化,ngOnChanges 就会被触发。

import { onChanges } from @angular/core;

在 class 中定义你的 ngOnChanges :

export your_class_name implements onChanges{

 ngOnChanges(){
 //Do your stuff with the input
 }
}