Angular attribute setter
В Angular свойства задаются через квадратные скобки.
<my-component [readonly]="true"></my-component>
Существует возможность задавать значение Input
свойства как директивы, например так: readonly
<my-component readonly></my-component>
Для этого необходимо реализовать setter
свойства.
private _isReadonly: boolean = false;
@Input() set readonly(value: boolean) {
this._isReadonly = typeof value === 'boolean' ? value : true;
}
get readonly(): boolean {
return this._isReadonly;
}