Що таке кореневий інжектор (root injector)?
Кореневий інжектор (root injector) - це головний інжектор усього застосунку Angular. Він створюється при запуску застосунку і живе, поки застосунок працює.
Що робить:
- зберігає всі залежності, позначені
providedIn: 'root'; - створює сервіси один раз і ділиться ними по всьому застосунку;
- керує часом життя цих сервісів (singleton - один екземпляр).
Приклад:
ts
@Injectable({ providedIn: 'root' })
export class UserService {}Angular реєструє UserService у кореневому інжекторі,
і тепер цей сервіс доступний у будь-якому компоненті без повторного створення.
Навіщо потрібен:
- щоб сервіси були спільними для всіх частин застосунку;
- щоб уникнути дублювання і заощаджувати пам'ять;
- щоб централізовано керувати залежностями.
Підсумок: Кореневий інжектор - це головний «контейнер» залежностей Angular, з якого беруться всі глобальні сервіси застосунку.
Коротка відповідь
Для співбесідиPremium
Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.