Создает локальную переменную movieplayer, которая обеспечивает доступ к экземпляру элемента video в выражениях привязки данных и привязки к событиям в текущем шаблоне.
<p *myUnless="myExpression">...</p>
Символ * превращает текущий элемент во встроенный шаблон. Эквивалентно: <ng-template [myUnless]="myExpression"><p>...</p></ng-template>
Преобразует текущее значение выражения cardNumber через канал myCardNumberFormatter.
<p>Employer: {{employer?.companyName}}</p>
Оператор безопасной навигации (?) означает, что поле employer является необязательным, и если оно не определено (undefined), остальная часть выражения должна игнорироваться.
<svg:rect x="0" y="0" width="100" height="100"/>
Шаблону фрагмента SVG требуется префикс svg: в его корневом элементе для устранения неоднозначности элемента SVG из компонента HTML.
Позволяет назначать стили для элемента HTML с помощью CSS. Вы можете использовать CSS напрямую, как в первом примере, или вы можете вызвать метод из компонента.
Объявляет, что класс является компонентом, и предоставляет метаданные о компоненте.
@Directive({...})class MyDirective() {}
Объявляет, что класс является директивой и предоставляет метаданные о директиве.
@Pipe({...})class MyPipe() {}
Declares that a class is a pipe and provides metadata about the pipe.
@Injectable()class MyService() {}
Объявляет, что класс может быть предоставлен и добавлен другими классами. Без этого декоратора компилятор не будет генерировать достаточно метаданных, чтобы позволить классу быть правильно созданным, когда он где-то внедряется.
Указывает селектор CSS, который идентифицирует эту директиву в шаблоне. Поддерживаются следующие селекторы: element, [attribute], .class и :not(). Не поддерживает селекторы родительско-дочерних отношений.
providers: [MyService, { provide: ... }]
Список поставщиков внедрения зависимостей для этой директивы и ее дочерних элементов.
Список встроенных стилей CSS или URL-адресов внешних таблиц стилей для стилизации представления компонента.
Декораторы полей классов для директив и компонентов¶
1
import{Input,...}from'@angular/core';
@Input() myProperty;
Объявляет входное свойство, которое можно обновить с помощью привязки свойства (пример: <my-cmp [myProperty]="someExpression">).
@Output() myEvent = new EventEmitter();
Объявляет выходное свойство, которое запускает события, на которые вы можете подписаться, с привязкой к событию (пример: <my-cmp (myEvent)="doSomething()">).
@HostBinding('class.valid') isValid;
Связывает свойство элемента хоста (здесь класс CSS valid) со свойством директивы / компонента (isValid).
Подписывается на событие элемента хоста (click) с помощью метода директивы / компонента (onClick), опционально передавая аргумент ($event).
@ContentChild(myPredicate) myChildComponent;
Привязывает первый результат запроса содержимого компонента (myPredicate) к свойству (myChildComponent) класса.
@ContentChildren(myPredicate) myChildComponents;
Связывает результаты запроса содержимого компонента (myPredicate) со свойством (myChildComponents) класса.
@ViewChild(myPredicate) myChildComponent;
Привязывает первый результат запроса представления компонента (myPredicate) к свойству (myChildComponent) класса. Недоступно для директив.
@ViewChildren(myPredicate) myChildComponents;
Связывает результаты запроса представления компонента (myPredicate) со свойством (myChildComponents) класса. Недоступно для директив.
Директива и обнаружение изменений компонентов и хуки жизненного цикла¶
constructor(myService: MyService, ...) { ... }
Вызывается до любого другого хука жизненного цикла. Используйте его для внедрения зависимостей, но избегайте здесь серьезной работы.
ngOnChanges(changeRecord) { ... }
Вызывается после каждого изменения входных свойств и перед обработкой содержимого или дочерних представлений.
ngOnInit() { ... }
Вызывается после конструктора, инициализации входных свойств и первого вызова ngOnChanges.
ngDoCheck() { ... }
Вызывается каждый раз, когда проверяются входные свойства компонента или директивы. Используйте его, чтобы расширить обнаружение изменений, выполнив пользовательскую проверку.
ngAfterContentInit() { ... }
Вызывается после ngOnInit, когда содержимое компонента или директивы было инициализировано.
ngAfterContentChecked() { ... }
Вызывается после каждой проверки содержимого компонента или директивы.
ngAfterViewInit() { ... }
Вызывается после ngAfterContentInit, когда инициализируются представления компонента и дочерние представления / представление, в котором находится директива.
ngAfterViewChecked() { ... }
Вызывается после каждой проверки представлений компонента и дочерних представлений / представления, в котором находится директива.
ngOnDestroy() { ... }
Вызывается один раз, прежде чем экземпляр будет уничтожен.