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

Похожие записи

Отладка Angular в VS Code

Настройка Visual Studio Code используя расширение Debugger for Chrome для отладки Angular приложений
03 декабря 2017 г. в Angular

@Attribute() декоратор

Аналогично @Input() позволяет получить значение атрибута с хоста компонента/директивы, но не отслеживает дальнейшее изменение атрибута.

14 сентября 2019 г. в Angular

Angular. Редирект по условию

Пример условного перенаправления пользователя в зависимости от некого количества

  • 0 - dashboard
  • 1 - карточка
  • 2 и более - список
09 января 2019 г. в Angular

Angular & MVVM

  • Model - just file like user.class.ts
  • View - HTML template of component
  • ViewModel - Typescript part of a component
14 апреля 2019 г. в Angular