Проверяет знание порядка выполнения хуков жизненного цикла Angular-компонента и их назначения.
Каждый Angular-компонент проходит через последовательность этапов: создание, рендеринг, проверка изменений и уничтожение. Хуки жизненного цикла — это методы, которые Angular вызывает автоматически в определённые моменты, давая разработчику возможность выполнить свою логику.
При создании компонента Angular вызывает хуки в следующем порядке:
import { Component, OnInit, OnChanges, OnDestroy, Input } from '@angular/core';
@Component({ selector: 'app-demo', template: '<p>Demo</p>' })
export class DemoComponent implements OnInit, OnChanges, OnDestroy {
@Input() value: string;
ngOnChanges() { console.log('1. ngOnChanges'); }
ngOnInit() { console.log('2. ngOnInit'); }
ngDoCheck() { console.log('3. ngDoCheck'); }
ngAfterContentInit() { console.log('4. ngAfterContentInit'); }
ngAfterContentChecked() { console.log('5. ngAfterContentChecked'); }
ngAfterViewInit() { console.log('6. ngAfterViewInit'); }
ngAfterViewChecked() { console.log('7. ngAfterViewChecked'); }
ngOnDestroy() { console.log('8. ngOnDestroy'); }
}В консоли при создании компонента вы увидите последовательность от 1 до 7, а при удалении — 8.
Хуки используются повсеместно: ngOnInit для загрузки данных, ngOnDestroy для отписки от RxJS-подписок, ngOnChanges для реакции на изменение входных параметров. Понимание порядка помогает избежать ошибок, например, когда пытаются обратиться к DOM в ngOnInit, хотя он ещё не готов — для этого существует ngAfterViewInit.
Итог: знание порядка хуков критично для правильной архитектуры Angular-приложений, особенно при работе с жизненным циклом дочерних компонентов и оптимизацией производительности.
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию