Angular: декораторы, директивы и пайпы

Декораторы

  • Class decorators@Component, @NgModule
  • Property decorators@Input, @Output
  • Method decorators@HostListener
  • Parameter decorators@Inject

Директивы

Директивы — классы, добавляющие или изменяющие поведение элементов в шаблоне.

  • Component Directives — особые директивы с шаблоном (компоненты).
  • Structural Directives — меняют структуру DOM: *ngFor, *ngIf.
  • Attribute Directives — меняют внешний вид/поведение элемента: ngStyle, ngClass.

Пайпы (Pipes)

Пайпы — простые функции, которые принимают входное значение, обрабатывают и возвращают преобразованное.

  • pure pipe — вызывается только когда Angular обнаруживает изменение значения или параметров пайпа.
  • impure pipe — вызывается в каждом цикле change detection независимо от изменения значения/параметров.

async pipe

async pipe подписывается на Observable или Promise и возвращает последнее эмитированное значение. При получении новых значений помечает соответствующие компоненты для change detection.

  • При уничтожении компонента автоматически отписывается/отсоединяется.
  • При смене ссылки на выражение отписывается от старого Observable/Promise и подписывается на новый.