Эта статья является зеркальной статьёй машинного перевода, пожалуйста, нажмите здесь, чтобы перейти к оригиналу.

Вид: 1359|Ответ: 1

[Угловат] Краткое введение в InjectionToken серии Angular 18 (Twenty Eight)

[Скопировать ссылку]
Опубликовано 2024-12-20 16:02:20 | | | |
Angular — это популярный фронтенд-фреймворк JavaScript, который предоставляет мощный способ создания одностраничных приложений (SPA). В Angular внедрение зависимостей (DI) — ключевая функция, которая позволяет эффективно управлять зависимостями в наших приложениях. Система инъекции зависимостей от Angular использует InjectionTokens для реализации определённых специальных требований к инъекции зависимостей. В этой статье я подробно объясню, чем занимается InjectionToken, и приведу примеры для его практического применения в приложениях Angular.

Что такое инъекция зависимости?

Прежде чем перейти к InjectionToken, давайте сначала разберёмся, что такое инъекция зависимостей. Инъекция зависимостей — это шаблон проектирования, который позволяет нам вводить зависимости одного объекта (например, сервисов или конфигурации) в другой объект без жёсткого кодирования этих зависимости. Преимущества этого включают:

1. Поддерживаемость: Внедряя зависимости в компоненты, мы можем легко изменять эти зависимости без необходимости модифицировать обширный код.
2. Тестируемость: Мы можем легко предоставлять симулированные зависимости компонентов для модульного тестирования без создания экземпляров этих зависимостей.
3. Слабая муфта: Впрыск зависимости помогает нам добиться слабой муфты, делая взаимоотношения между отдельными компонентами более гибкими.

В Angular встроена инжекция зависимостей, а контейнер инжекции зависимостей отвечает за управление созданием и жизненным циклом зависимостей.

Зачем вам нужен InjectionToken?

Иногда нужно вводить зависимостиЭто не экземпляр класса, а элемент конфигурации, строка или другое неклассовое значение。 Вот тут и вступает в игру InjectionToken, позволяющий нам вводить значения вне класса в компоненты или сервисы в виде зависимостей.

Что делает InjectionToken?

Роль InjectionToken заключается в определении идентификатора, который идентифицирует зависимости. Он позволяет нам вводить любое значение в компонент или сервис Angular, а не просто экземпляр класса. Обычно мы создаём InjectionToken где-то в приложении и используем его там, где нужно ввести это значение.

Вот основные функции InjectionToken:

1. Уникальная идентификация: InjectionToken — это уникальный идентификатор, гарантирующий уникальность зависимостей. Это важно для предотвращения путаницы или конфликтов в зависимостях.
2. Инъекция зависимостей без классов: InjectionToken позволяет нам вводить любое значение, а не только экземпляр класса. Это полезно в таких ситуациях, как конфигурации, константы, строки и т.д.
3. Конфигурация провайдера: с помощью конфигурации провайдера мы можем указать Angular, как предоставить экземпляр зависимости для InjectionToken. Это позволяет нам предоставлять разные значения для InjectionTokens в разных контекстах.

Теперь давайте подробно рассмотрим использование и роль InjectionToken с несколькими примерами.

Внедрить конфигурацию приложения

Например, мы вводим конфигурацию приложения с URL-адресом и именем среды, и код выглядит следующим образом:


Из инъекции конструктора распечатка выглядит следующим образом:



Ссылка:

Вход по гиперссылке виден.
Вход по гиперссылке виден.




Предыдущий:Консольные сервисы .NET/C# регистрируются при обнаружении сервисов Consul
Следующий:Позвоните в API Alibaba Cloud OpenAPI для доступа к использованию сервера
 Хозяин| Опубликовано 17.02.2025 13:36:08 |
InjectionToken и BehaviourSubject объединяются для создания глобального динамического значения




Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com