Хуки жизненного цикла входной совокупности от родственного компонента angular2
У меня есть два компонента братьев и сестер, как показано ниже
<broker-list (onBrokerClicked)="onBrokerClicked= $event"></broker-list>
<station-list [(broker)]="onBrokerClicked" [(ngModel)]="stations"></station-list><!--broker is an input-->
когда пользователь нажимает на список брокеров, в брокере компонентов списка станций, который является @Input
заселяется. ngModel
в список станций можно заполнить только после того, как щелкнет компонент-брат или, другими словами, заполняется входной брокер. Я хочу, чтобы точный момент, когда вход заполняется от родственного компонента, который не находится в ngOnInit
, Есть ли какое-либо событие или что-то, что поднимается после ввода данных, что я могу сделать что-то в этом???
2 ответа
Ты можешь использовать 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
}
}
Добавить метод установки в 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;
}