Skip to main content

У якому порядку викликаються hooks життєвого циклу?

Порядок виклику lifecycle hooks Angular для компонента:

Порядок виклику

  1. ngOnChanges(changes) - викликається при зміні вхідних даних (@Input) до ініціалізації компонента.
  2. ngOnInit() - один раз після першої ініціалізації вхідних властивостей.
  3. ngDoCheck() - після ngOnInit, під час кожної перевірки змін Angular.
  4. ngAfterContentInit() - після проекції зовнішнього контенту (<ng-content>), один раз.
  5. ngAfterContentChecked() - після кожної перевірки спроєктованого контенту.
  6. ngAfterViewInit() - після ініціалізації представлення компонента та його дочірніх компонентів, один раз.
  7. ngAfterViewChecked() - після кожної перевірки представлення компонента та дочірніх компонентів.
  8. ngOnDestroy() - перед знищенням компонента.

Тобто послідовність:

ngOnChanges → ngOnInit → ngDoCheck → ngAfterContentInit → ngAfterContentChecked → ngAfterViewInit → ngAfterViewChecked → ngOnDestroy

Якщо вхідні дані змінюються після ініціалізації, ngOnChanges і ngDoCheck можуть викликатися багаторазово, інші hooks (After*) - після кожної перевірки контенту чи представлення.

Коротка відповідь

Для співбесіди
Premium

Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.