0% ont trouvé ce document utile (0 vote)
36 vues10 pages

Introduction aux services Angular

Le document présente un exemple de services en Angular, soulignant leur rôle dans la réutilisabilité du code et l'interaction avec le back-end via des requêtes HTTP. Il décrit également l'injection de dépendances, les types d'injection, et le processus d'enregistrement des services pour les rendre disponibles dans les composants. Enfin, il fournit des instructions pour créer un service et ajouter une classe modèle.

Transféré par

Sofiane SH
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
36 vues10 pages

Introduction aux services Angular

Le document présente un exemple de services en Angular, soulignant leur rôle dans la réutilisabilité du code et l'interaction avec le back-end via des requêtes HTTP. Il décrit également l'injection de dépendances, les types d'injection, et le processus d'enregistrement des services pour les rendre disponibles dans les composants. Enfin, il fournit des instructions pour créer un service et ajouter une classe modèle.

Transféré par

Sofiane SH
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Services

SECTION 4: UN 1 ER EXEMPLE

[Link] ([Link]@[Link]) 162


Service (1/2)
Un 1er exemple
Objectifs
• Augmenter la réutilisabilité du code en séparant la fonctionnalité des composants des autres types de traitement
• Généralement
• Composants se limite à l’affichage et à la gestion des événements utilisateurs dans la vue du composant.
• Services : exécutent les traitements en local ou en back
• A chaque événement, le composant fait appel à des fonctions dans les services.
• Les services interagissent avec le back end (via des requêtes HTTP).
• Les composants consomment les services (qui consomment d’autres services).
• L’utilisation d’un service se fait via le principe de l’injection des dépendances.

HTML Template @Service 1


< > { }

@Service 3
{ }

@Component @Service 2
{ } { }

[Link] ([Link]@[Link]) 163


Service (2/2)
Un 1er exemple
 Une classe TypeScript décorée par @Injectable
 pouvant avoir le rôle de l’intermédiaire avec la partie back-end
 un moyen de communication entre composants
 injectable dans les classes où on a besoin de l’utiliser pouvant utiliser un ou plusieurs autres
services
 Quelques Services
 ActivatedRoute
 Router
 FormBuilder
 HttpClient
 Pour créer un service

$ ng generate service nom-service

[Link] ([Link]@[Link]) 164


Exemple d’un service
Un 1er exemple
@Service 1 <<dépendance>> @Component
{ } { }

[Link] ([Link]@[Link]) 165


Injection des dépendances (1/2)
Un 1er exemple Injection de dépendance
une façon de fournir une nouvelle instance d'une classe avec les
@Component dépendances
La plupart des dépendances sont des services
{constructor (Service)}

[Link] ([Link]@[Link]) 166


Injection des dépendances (2/2)
Un 1er exemple

Trois types
• injection par constructeur: les dépendances sont fournies par le constructeur de la classe.
• injection par setter: le client offre un setter que l'injecteur utilise pour injecter la dépendance.
• injection par interface: la dépendance fournit une méthode d'injection qui injectera la dépendance
dans tout client qui lui sera transmis. Les clients doivent implémenter une interface qui fourni une
méthode qui accepte la dépendance.

[Link] ([Link]@[Link]) 167


Revenons à notre exemple
Un 1er exemple

$ ng g s services/about

[Link] ([Link]@[Link]) 168


Injection de dépendances d’Angular
Un 1er exemple
 Lorsque Angular crée un composant, il demande d'abord à un injecteur les
services requis.
 Un injecteur maintient un conteneur d'instances de service qu'il a créé
précédemment.
 Si une instance de service demandée n'est pas dans le conteneur, l'injecteur en
fait une et l'ajoute au conteneur avant de renvoyer le service à Angular.
 Lorsque tous les services demandés ont été résolus et retournés, Angular peut
appeler le constructeur du composant avec ces services comme arguments.

[Link] ([Link]@[Link]) 169


Enregistrement des services
Un 1er exemple
 Pour utiliser un service, il faut préalablement enregistrer un fournisseur de ce service avec
l'injecteur.
 Un fournisseur de service est une fabrique qui permet de gérer l’instanciation des
services enregistrée en modules ou en composants.
 En général, les fournisseurs sont ajoutés au module racine afin que la même instance
d'un service soit disponible partout.

Il faut enregistrer le service (Version < 6)


[Link] ([Link]@[Link]) 170
Ajout d’une classe modèle: Comment
Un 1er exemple
1

3 4

• Créez un dossier nommé shared sous


le dossier src / app.
• À ce dossier, ajoutez un fichier nommé
[Link] avec le code suivant:

[Link] ([Link]@[Link]) 171

Vous aimerez peut-être aussi