Mam składnik Angular2 w tym komponencie, który obecnie ma kilka pól, które mają zastosowane przed nimi @Input (), aby umożliwić powiązanie z tą właściwością, tj.
@Input() allowDay: boolean;
To, co chciałbym zrobić, to w rzeczywistości powiązać się z właściwością za pomocą get / set, abym mógł wykonać inną logikę w seterze, coś takiego jak poniżej
_allowDay: boolean;
get allowDay(): boolean {
return this._allowDay;
}
set allowDay(value: boolean) {
this._allowDay = value;
this.updatePeriodTypes();
}
jak bym to zrobił w Angular2?
Opierając się na sugestii Thierry'ego Templiera, zmieniłem to na, ale powoduje to błąd Nie można powiązać z „allowDay”, ponieważ nie jest to znana własność natywna:
//@Input() allowDay: boolean;
_allowDay: boolean;
get allowDay(): boolean {
return this._allowDay;
}
@Input('allowDay') set allowDay(value: boolean) {
this._allowDay = value;
this.updatePeriodTypes();
}
[allowDay]="....". If the field (setter) name and the property name you want to use for binding are the same, you can omit the parameter for
@Input (...) `.