Можно ли передать интерфейс в качестве токена в inject? Почему да или нет?

TypeScript-интерфейс нельзя использовать как runtime-токен inject: после компиляции он отсутствует.

Короткий ответ

Что ответить на собеседовании

TypeScript-интерфейс нельзя использовать как runtime-токен inject: после компиляции он отсутствует.

Подробный разбор

Ответ с пояснениями

TypeScript-интерфейс нельзя использовать как runtime-токен inject: после компиляции он отсутствует.

Создайте new InjectionToken<ServiceContract>('ServiceContract'), зарегистрируйте provider под этим экземпляром и передайте его в inject. Generic задаёт тип результата, а уникальный объект токена идентифицирует зависимость во время выполнения.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее