Formulaire de connexion

Pour accéder à une API, il faut s'authentifier. C'est pourquoi nous allons commencer par créer une page de connexion, avec un formulaire de connexion.

Page de connexion

  1. Création d'un composant ConnexionPage.vue

  2. Création d'une route /connexion

  3. Ajout d'un bouton "Se connecter" dans la toolbar supérieure.

Page

Créer le fichier src/pages/ConnexionPage.vue et y copier le code suivant.

ConnexionPage.vue
<template>
  <q-page padding>
    <h1>Connexion</h1>
  </q-page>
</template>

<script setup>
</script>

Route

Modifier le fichier des routes en y ajouter la route /connexion qui chargera le composant src/pages/PageConnexion.vue.

  • 8 : Ajout de la route /connexion.

Bouton de connexion

Modifier le fichier src/layouts/MainLayout.vue et y ajouter le bouton dans la <q-toolbar>, après le titre <q-toolbar-title>.

  • 9-15 : Ajout du bouton de connexion

Se connecter ou créer un compte

L'utilisateur aura le choix entre se connecter ou créer un nouveau compte.

Nous allons utiliser des onglets, Tabs, pour séparer ces deux actions.

Pour démarrer, nous allons récupérer le code de démonstration de la doc Quasar pour créer des Onglets (Tabs) avec panneaux (Panels).

Exemple Quasar "Tabs with tab panels"

Coller le code de démo Quasar ci-dessous dans le composant ConnexionPage.vue.

  • Supprimer le 3e onglet "movies" <q-tab> et son panneau <q-tab-pannel>

  • Renommer mail en connexion

  • Renommer alarms en enregistrement

  • Supprimer l'attribut dense de <q-tabs>

  • Ajouter une classe CSS à <q-card> et lui octroyer une largeur max de 500px et un largeur automatique dans la section <style>

Formulaire de connexion

Nous allons créer un composant contenant le formulaire de connexion.

Créer le fichier src/components/Connexion/FormLogin.vue et y coller le code suivant.

  • 2 : à l'envoi du formulaire, appelle la méthode submitForm

    • Ne pas oublier d'ajouter .prevent, pour stopper l'envoi naturel du formulaire.

  • 4 et 13 : liaison avec l'objet Vue

  • 5 et 14 : règle de validation des champs du formulaire

  • 7 et 16 : nomme, référence, les éléments HTML afin de le récupérer dans l'objet Vue

  • 19 : champ de type password

  • 17 : valide l'erreur à la sortie du champ et non à chaque modification

  • 22 : bouton type="submit" déclenche l'envoi du formulaire

  • 33-36 : données du formulaire liées avec v-model dans les <q-input>

  • 38 : méthode appelée lors de l'envoi du formulaire

  • 42-46 : méthode qui valide le format de l'email

Importer et ajouter le composant FormLogin.vue dans la page de connexion.

  • 19 : Ajout du formulaire <LoginForm/>

  • 32 : Importation du composant FormLogin.vue

Formulaire d'enregistrement

Pour créer le formulaire d'enregistrement, nous allons copier le composant FormLogin.vue et le renommer en FormSignup.vue.

Ensuite, il faudra ajouter un champ, et des données, pour le nom d'utilisateur name et pour la confirmation du mot de passe password_confirmation.

Finalement importer le composant FormSignup.vue dans la page de connexion ConnexionPage.vue.

Résultat

Mis à jour

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