Angular est un framework JavaScript front-end populaire qui offre un moyen puissant de construire des applications à page unique (SPA). Dans Angular, l’injection de dépendances (DI) est une fonctionnalité clé qui nous permet de gérer efficacement les dépendances dans nos applications. Le système d’injection de dépendances d’Angular utilise InjectionTokens pour implémenter certaines exigences spéciales d’injection de dépendances. Dans cet article, j’expliquerai en détail ce que fait InjectionToken et fournirai des exemples illustrant son utilisation pratique dans les applications Angular.
Qu’est-ce que l’injection de dépendance ?
Avant de plonger dans InjectionToken, comprenons d’abord ce qu’est l’injection de dépendance. L’injection de dépendances est un schéma de conception qui nous permet d’injecter les dépendances d’un objet (par exemple, des services ou des configurations) dans un autre objet sans coder ces dépendances en dur. Les avantages de cela incluent :
1. Maintenabilité : En injectant des dépendances dans les composants, nous pouvons facilement modifier ces dépendances sans avoir à modifier un code étendu. 2. Testabilité : Nous pouvons facilement fournir des dépendances simulées pour des composants à tester unitairement sans créer réellement des instances de ces dépendances. 3. Couplage lâche : L’injection de dépendances nous aide à obtenir un couplage lâche, rendant les relations entre les composants individuels plus flexibles.
Dans Angular, l’injection de dépendances est intégrée, et le conteneur d’injection de dépendances d’Angular est responsable de la gestion de la création et du cycle de vie des dépendances.
Pourquoi avez-vous besoin d’un InjectionToken ?
Parfois, il faut injecter des dépendancesCe n’est pas une instance d’une classe, mais un élément de configuration, une chaîne ou une autre valeur non classée。 C’est là qu’InjectionToken intervient, nous permettant d’injecter des valeurs non classées dans des composants ou services sous forme de dépendances.
Que fait InjectionToken ?
Le rôle d’un InjectionToken est de définir un identifiant qui identifie les dépendances. Cela nous permet d’injecter n’importe quelle valeur dans un composant ou service Angular, pas seulement une instance d’une classe. Normalement, nous créons un InjectionToken quelque part dans l’application et l’utilisons là où il faut injecter cette valeur.
Voici les principales fonctions d’InjectionToken :
1. Identification unique : L’InjectionToken est un identifiant unique qui garantit l’unicité des dépendances. C’est important pour éviter toute confusion ou conflit dans les dépendances. 2. Injection de dépendance non classée : InjectionToken nous permet d’injecter n’importe quelle valeur, pas seulement une instance d’une classe. Cela est utile dans des situations telles que des configurations, constantes, chaînes de caractères, etc. 3. Configuration du fournisseur : Grâce à la configuration du fournisseur, nous pouvons indiquer à Angular comment fournir une instance de la dépendance pour l’InjectionToken. Cela nous permet de fournir différentes valeurs pour les InjectionTokens selon les contextes.
Maintenant, détaillons l’utilisation et le rôle d’InjectionToken avec quelques exemples.
Injecter la configuration de l’application
Par exemple, nous injectons une configuration d’application avec l’adresse URL et le nom de l’environnement, et le code est le suivant :
D’après l’injection du constructeur, l’impression est la suivante :
Référence:
La connexion hyperlientérée est visible.
La connexion hyperlientérée est visible. |