Angular · Middle · Запитання 23 з 75
Навіщо використовувати InjectionToken?
export const API_URL = new InjectionToken<string>("API_URL");
// providers: [{ provide: API_URL, useValue: "https://api.example.com" }]
// usage: private apiUrl = inject(API_URL);- ✓Правильна відповідь: Щоб впроваджувати значення, для яких немає класу-токена: рядки, об'єкти конфігурації, функції
- 2Щоб шифрувати значення, що зберігаються в сервісах
- 3Щоб зробити сервіс доступним лише в тестах
Пояснення
Інтерфейси зникають у рантаймі, тому не можуть бути DI-токенами. InjectionToken - унікальний ключ у рантаймі, що до того ж несе TypeScript-тип.