17-8 Traiter l'envoi du formulaire
On peut finalement traiter l'envoi du formulaire! En effet, nous avons été en mesure de convertir le formulaire en un modèle Projet et le service ProjetService a maintenant une fonction creer() permettant de faire une requête de création vers Supabase.
Injecter ProjetService dans ProjetCreerPage
Pour utiliser ProjetService dans la composante, on doit l'injecter via le contrôleur.
src/app/features/projets/pages/projet-creer.ts
//...
constructor(private projetService: ProjetService) { }
//...
Effectuer la requête dans la fonction soumettre()
Vous êtes maintenant prêts à faire une requête en appelant la fonction du service à partir de la fonction soumettre() de la composante!
attention
Vous devrez modifier la fonction soumettre() pour en faire une fonction asynchrone (async).
src/app/features/projets/pages/projet-creer.ts
protected async soumettre() {
if(this.projetForm.valid){
const valeurForm = this.projetForm.value;
const projetRequete: ProjetCreerRequete = {
nom: valeurForm.nom!,
description: valeurForm.description || undefined
}
const projet = await this.projetService.creer(projetRequete);
}
}
Tester dans le navigateur
Si tout se passe bien, vous devriez pouvoir appuyer sur Soumettre et voir un nouveau projet dans la table projets de Supabase.
http://localhost:4200

