Introduction
Dans ce projet, vous allez apprendre à créer une application "Billet-sticky de souhaits" à l'aide de Vue.js et de la bibliothèque Element-UI. Le projet vise à fournir une plateforme anonyme et pratique pour que les gens puissent exprimer leurs objectifs, leurs idéaux et leurs aspirations de manière sûre et confidentielle.
👀 Aperçu
Le message d'erreur suivant sera rapporté lorsque les conditions de validation du champ ne sont pas remplies :

Après avoir rempli les conditions et publié le souhait, l'effet est le suivant :

🎯 Tâches
Dans ce projet, vous allez apprendre :
- Comment configurer la structure du projet et préparer les fichiers et les dossiers nécessaires.
- Comment afficher le formulaire terminé sur le mur des souhaits.
- Comment implémenter la validation du formulaire pour vous assurer que les champs de saisie répondent aux critères requis.
- Comment gérer la soumission et la fonction de réinitialisation du formulaire.
- Comment implémenter la fonction de téléchargement et d'affichage d'aperçu d'image.
🏆 Réalisations
Après avoir terminé ce projet, vous serez capable de :
- Structurer et organiser un projet Vue.js.
- Utiliser la bibliothèque Element-UI pour créer des formulaires et gérer les interactions utilisateur.
- Implémenter la validation du formulaire à l'aide des règles de validation d'Element-UI.
- Gérer les téléchargements de fichiers et les aperçus d'image dans une application Vue.js.
- Gérer l'état et mettre à jour l'interface utilisateur en fonction des actions de l'utilisateur.
Configurer la structure du projet
Dans cette étape, vous allez configurer la structure du projet et préparer les fichiers et les dossiers nécessaires.
Ouvrez le dossier du projet dans votre éditeur de code. La structure de répertoire est la suivante :
├── css
│ ├── fonts
│ │ ├── element-icons.ttf
│ │ └── element-icons.woff
│ ├── index.css
│ └── wish.css
├── images
│ ├── bg.jfif
│ └── ding.png
├── index.html
└── js
├── index.js
└── vue.min.js
Où :
cssest le dossier où sont stockées les styles du projet pourelement-ui.imagesest le dossier d'images.index.htmlest la page principale.jsest le dossier pour les bibliothèques JavaScript dépendantes du projet.
Cliquez sur le bouton Go Live dans le coin inférieur droit de WebIDE pour exécuter le projet.
Ensuite, ouvrez "Web 8080" en haut de la machine virtuelle et rafraîchissez manuellement pour voir la page.
La page ne valide pas la zone de saisie lors de l'initialisation et le message de souhait n'apparaît pas après la saisie.
Afficher le formulaire terminé sur le mur des souhaits
Dans cette étape, vous allez modifier le fichier index.html pour afficher le formulaire terminé sur le mur des souhaits.
- Ouvrez le fichier
index.htmldans le dossier du projet. - Trouvez le commentaire TODO dans le fichier
index.htmlet après avoir observé le problème dans le code, j'ai constaté que le code dansv-for="(item,index) in []"était problématique et l'ai modifié en le suivant :
<!-- TODO -->
<div
class="card"
:class="item.css"
v-for="(item,index) in wishList"
:key="index"
>
<!--... -->
</div>
Le code dans l'élément <div> avec l'attribut class="card" affichera le nom, le contenu et l'image (le cas échéant) du formulaire terminé sur le mur des souhaits.
Mettre en œuvre la validation du formulaire
Dans cette étape, vous allez compléter la validation du formulaire pour vous assurer que les champs de saisie répondent aux critères requis.
- Ouvrez le fichier
index.htmldans le dossier du projet. - Trouvez l'objet
rulesdans la sectiondatade votre instance Vue pour ajouter le code suivant :
rules: {
// TODO
name: [
{
required: true,
message: "Veuillez entrer votre nom",
trigger: "blur"
},
{
min: 2,
max: 4,
message: "La longueur doit être comprise entre 2 et 4 caractères",
trigger: "blur"
}
],
content: [
{
required: true,
message: "Veuillez entrer un contenu",
trigger: "blur"
},
{
min: 1,
max: 30,
message: "La longueur doit être comprise entre 1 et 30 caractères",
trigger: "blur"
}
]
},
Dans les propriétés
nameetcontentde l'objetrules, définissez les règles de validation :name: Le champnameest requis et doit avoir une longueur comprise entre 2 et 4 caractères.content: Le champcontentest requis et doit avoir une longueur comprise entre 1 et 30 caractères.
Avec ces règles de validation en place, le formulaire affichera désormais des messages d'erreur lorsque les champs de saisie ne répondent pas aux critères spécifiés.

- Après avoir rempli les conditions et publié le souhait, l'effet est le suivant :

Résumé
Félicitations ! Vous avez terminé ce projet. Vous pouvez pratiquer plus de laboratoires dans LabEx pour améliorer vos compétences.



