输入种群的生命周期钩子来自兄弟组件angular2

时间:2017-06-06 12:16:55

标签: angular angular2-inputs lifecycle-hook

我有两个兄弟组件,如下面的

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

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

2 个答案:

答案 0 :(得分:1)

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

station-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;
}

答案 1 :(得分:1)

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

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

import { onChanges } from @angular/core;

在课堂中定义你的ngOnChanges:

export your_class_name implements onChanges{

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