9. Conclusion intermédiaire
Les vingt-cinq exemples ont présenté les notions dont nous avons besoin pour écrire le client [RdvMedecins] :
Notion | Où elle servira dans l'étude de cas |
composants, entrées, sorties, [model()], projection | la barre de navigation, les champs de formulaire, les fenêtres |
signaux, [computed], [effect], [linkedSignal] | toutes les pages ; l'agenda qui suit son adresse |
formulaires à signaux, validation, contrôles personnalisés | la connexion, les fiches des médecins et des clients, la création d'un compte, le compte de l'utilisateur |
pipes | la mise en forme des dates, des horaires, des noms |
services et injection de dépendances | l'utilisateur connecté, les messages, la fenêtre de confirmation |
le routeur et ses gardes | les pages, les droits de chaque rôle, la session à rétablir après F5 |
[ngx-translate] | le français et l'anglais, et la traduction des erreurs du serveur |
[HttpClient], intercepteur, cookie httpOnly, proxy | la connexion, la session expirée, tous les échanges avec le serveur |
la couche d'accès à l'API | un fichier [rdvmedecins.api.ts], une méthode par route |
Le client sera l'exact équivalent de l'application HTML du cours [NestJS], page pour page. La différence est ailleurs : le serveur ne fabrique plus aucune page, il répond en JSON, et tout ce qui touche à l'affichage (les pages, la langue, la mise en forme des dates, les messages) s'est déplacé dans le navigateur.