Exercice CliGest

Exemple de solution

Télécharger le code de l'exemple de solution

Objectifs

Créer une application Quasar de deux pages :

Contraintes

  • La liste des clients devra être gérée par un magasin Vuex.

  • Créer un composant Client.vue qui contiendra les données d'un client <q-item>...</q-item>

Exemple de résultat

Page d'accueil
Page clients

Instructions

  1. Créer les pages, routes et menu de navigation de l'application Quasar.

  2. Créer un magasin Vuex pour la liste des clients.

  3. Intégrer le magasin Vuex à la page des clients et la rendre dynamique en affichant les clients du tableau JavaScript des clients

  4. Créer un composant Client.vue qui contient les données d'un client.

  5. Créer une action getClientsApi récupérant la liste des clients de l'API.

  6. Après le chargement de la page des clients, appeler l'action getClientsApit.

Page d'accueil

Contenu de la page d'accueil, à copier et coller sans modification.

Liste des clients

Exemple de code pour une liste avec un seul, client.

  1. Copier le code, le rendre dynamique en le liant au tableau des clients du magasin.

  2. Créer un composant Client.vue qui contiendra le détail d'un client <q-item>. Le données du client seront passée à Client.vue via une propriété.

triangle-exclamation

Magasin Vuex

  1. Créer un nouveau module, magasin, clients.js et l'ajouter à Vuex.

  2. Dans ce nouveau magasin clients.js :

    • Déclarer un nouvel un état, state, clients et l'initialiser avec le tableau ci-après.

    • Créer les mutations, actions et getters nécessaires.

Tableau JavaScript des clients

Connexion à l'API

  1. Importer Axios dans le magasin

  2. Créer une action getClientsApi dans le magasin

    1. Exécuter la requête GET https://randomuser.me/api/?results=100&nat=CH

      1. En cas de succès : remplacer le tableau des clients par la réponse de l'API

      2. En cas d'échec : afficher un message dans la console.

  3. Appeler getClientsApi après le chargement de la page des clients.

triangle-exclamation

Mis à jour

Ce contenu vous a-t-il été utile ?