Angular · Senior · Запитання 1 з 75
Як Zone.js повідомляє Angular, коли запускати change detection?
- ✓Правильна відповідь: Він патчить асинхронні API браузера (події, таймери, проміси, XHR) і сповіщає Angular про завершення задачі, що запускає
ApplicationRef.tick() - 2Він порівнює DOM з віртуальним DOM кожні 16 мс
- 3Angular опитує кожне поле кожного компонента на зміни
Пояснення
Zone.js не знає, *що* змінилося, - лише що завершилася асинхронна робота, тому Angular перевіряє дерево від кореня (пропускаючи непозначені OnPush-піддерева). Це просто, але може давати багато зайвих перевірок.