Adloun

Vue : construire une application web (école d'ingénieur) · Chapitre 12 · Application directe du cours

Le fil d'une commande

Projet : la Librairie en application Vue · niveau 1 (application)

Énoncé

L'utilisateur a rempli correctement le formulaire et clique sur « Valider la commande ». Décrire, dans l'ordre, ce qui se passe jusqu'à l'affichage de la confirmation : fonctions appelées, requête, modifications de l'état, mises à jour du DOM, déplacement du focus. Que change un refus du serveur ?

Corrigé

  • Le clic sur le bouton d'envoi (type="submit") déclenche l'événement submit du formulaire. Le modificateur .prevent empêche le navigateur de charger une page, et Vue appelle valider.
  • Aucun envoi en cours ; les deux champs sont marqués « touchés », aucun message d'erreur n'est calculé.
  • Les lignes du panier sont réduites à leur ISBN et leur quantité, puis envoyer passe envoi à true : le bouton se désactive et affiche « Envoi en cours… », le formulaire passe en aria-busy="true". fetch envoie la requête POST.
  • Réponse 201 : reponse reçoit le numéro et le total, envoi repasse à false.
  • De retour dans valider : le panier est vidé (l'en-tête affiche « Panier (0) », localStorage est réécrit). Le gabarit, réactif, remplace le formulaire par la confirmation.
  • await nextTick() attend que ce DOM existe, puis le focus est placé sur la confirmation (tabindex="-1"), que le lecteur d'écran lit.

En cas de refus, erreurs reçoit les messages du serveur et reponse reste null : le panier n'est pas vidé, le formulaire reste affiché, et le focus va sur la liste des erreurs (role="alert"). Le test de bout en bout du chapitre suit exactement ce chemin, et le relevé du parcours dans Chromium le confirme :


refus du serveur : Stock insuffisant pour « Introduction à l’algorithmique » (3 en stock). | focus sur l'alerte : alert
confirmation : Commande n° 1001 enregistrée | Montant : 178,00 €. Merci, Ada Lovelace !

100 % gratuit

La suite du chapitre est sur Adloun

Exercice suivant et tuteur

Sans compte : le cours et le premier QCM. Exercices et tuteur : inscription gratuite en 30 secondes, sans carte bancaire.

Le cours du chapitre · Tous les exercices du chapitre

Exercice suivant et tuteur →