Table des matières
Utilisation d'un tableau pour stocker des champs dynamiques
Ajout d'un nouveau champ avec un bouton
Supprimer un champ en toute sécurité
Gestion des données de formulaire complexe (facultatif)
Maison interface Web Voir.js Comment ajouter ou supprimer dynamiquement les champs de formulaire dans Vue?

Comment ajouter ou supprimer dynamiquement les champs de formulaire dans Vue?

Jul 31, 2025 am 08:55 AM

Les méthodes d'ajout ou de supprimer dynamiquement les champs de formulaire dans Vue sont les suivantes: 1. Utilisez un tableau pour stocker les données de champ et mettez automatiquement à mettre à jour le DOM avec le système réactif de Vue; 2. Créez une méthode pour ajouter des champs, ajouter de nouveaux éléments au tableau par push () et définir une limite supérieure; 3. Créez une méthode pour supprimer les champs, utiliser Splice () pour supprimer en toute sécurité les champs de l'indice spécifié et définir un numéro de rétention minimum; 4. Pour les données de formulaire complexes, vous pouvez utiliser un tableau d'objets pour stocker plusieurs types de champs et leurs valeurs pour obtenir une gestion des entrées plus flexible.

Comment ajouter ou supprimer dynamiquement les champs de formulaire dans Vue?

Dans Vue, l'ajout ou la suppression de champs de formulaire dynamiquement est une exigence courante lors de la création de formulaires flexibles, comme permettant aux utilisateurs de saisir plusieurs adresses e-mail, numéros de téléphone ou adresses. La clé est de gérer les données de formulaire avec le système de réactivité de Vue et d'utiliser v-for pour rendre les champs dynamiquement.

Comment ajouter ou supprimer dynamiquement les champs de formulaire dans Vue?

Décomposons-le en étapes pratiques.


Utilisation d'un tableau pour stocker des champs dynamiques

Le fondement des champs dynamiques de Vue utilise un tableau pour stocker les valeurs. La réactivité de Vue fonctionne bien avec les mutations du tableau, donc lorsque vous ajoutez ou supprimez les éléments du tableau, le DOM met à jour automatiquement.

Comment ajouter ou supprimer dynamiquement les champs de formulaire dans Vue?

Par exemple:

 données() {
  retour {
    Courriels: ['']
  }
}

Puis dans votre modèle:

Comment ajouter ou supprimer dynamiquement les champs de formulaire dans Vue?
 <div v-for = "(e-mail, index) dans les e-mails": key = "index">
  <entrée v-model = "e-mail" type = "e-mail" />
  <bouton @ click = "removeMail (index)"> supprimer </fontificateur>
</div>
<bouton @ click = "addemail"> Ajouter un e-mail </ bouton>

Cela met en place une boucle qui rend une entrée par e-mail dans le tableau.


Ajout d'un nouveau champ avec un bouton

Pour ajouter un nouveau champ, créez une méthode qui pousse une chaîne vide (ou une valeur par défaut) dans le tableau:

 Méthodes: {
  addemail () {
    this.emails.push (&#39;&#39;)
  }
}

Maintenant, lorsque l'utilisateur clique sur "Ajouter un e-mail", un nouveau champ de saisie apparaît.

Vous pouvez également fixer une limite pour empêcher l'ajout de trop de champs:

 Méthodes: {
  addemail () {
    if (this.emails.length <5) {
      this.emails.push (&#39;&#39;)
    }
  }
}

Cela évite l'éclat de l'utilisateur avec trop d'entrées.


Supprimer un champ en toute sécurité

La suppression d'un champ est tout aussi importante. Utilisez splice() pour supprimer un élément du tableau par index:

 Méthodes: {
  retireMail (index) {
    this.emails.splice (index, 1)
  }
}

Quelques choses à noter:

  • Utilisez toujours splice() au lieu de delete car il modifie correctement le tableau et Vue y réagira.
  • S'il ne reste plus qu'un champ, vous voudrez peut-être le laisser vide au lieu de le retirer:
 retireMail (index) {
  if (this.emails.length> 1) {
    this.emails.splice (index, 1)
  }
}

Cela empêche l'utilisateur de supprimer accidentellement tous les champs.


Gestion des données de formulaire complexe (facultatif)

Si vos champs de formulaire sont plus complexes que les chaînes simples, comme avoir plusieurs entrées par article, vous pouvez plutôt stocker des objets dans le tableau:

 données() {
  retour {
    Contacts: [
      {Type: &#39;Email&#39;, valeur: &#39;&#39;}
    ]]
  }
}

Puis dans le modèle:

 <div v-for = "(contact, index) dans les contacts": key = "index">
  <sélectionnez V-model = "Contact.Type">
    <Option Value = "Email"> Email </ Option>
    <Option Value = "Phone"> Téléphone </ Option>
  </lect>
  <entrée v-model = "contact.value" />
  <bouton @ click = "RemoveContact (index)"> Supprime </fontificateur>
</div>
<bouton @ click = "addContact"> Ajouter un contact </futh>

Et les méthodes:

 Méthodes: {
  addContact () {
    this.contacts.push ({type: &#39;e-mail&#39;, valeur: &#39;&#39;})
  },
  removeContact (index) {
    if (this.contacts.length> 1) {
      this.Contacts.splice (index, 1)
    }
  }
}

Cela vous donne plus de flexibilité pour gérer différents types d'entrées.


Ainsi, la gestion dynamiquement des champs de formulaire dans VUE consiste essentiellement à mettre à jour un tableau et à laisser Vue repenser en fonction de cela. Ce n'est pas compliqué une fois que vous avez obtenu le modèle - gérez simplement le tableau, liez les entrées avec v-model et utilisez v-for les parcourir.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Propriétés calculées vs méthodes en Vue Propriétés calculées vs méthodes en Vue Aug 05, 2025 am 05:21 AM

Calculé a un cache et les accès multiples ne sont pas recalculés lorsque la dépendance reste inchangée, tandis que les méthodes sont exécutées à chaque fois qu'elles sont appelées; 2.COMPUT est adapté aux calculs basés sur des données réactives. Les méthodes conviennent aux scénarios où les paramètres sont requis ou les appels fréquents, mais le résultat ne dépend pas de données réactives; 3.Coupation prend en charge les getters et les setters, ce qui peut réaliser la synchronisation bidirectionnelle des données, mais les méthodes ne sont pas prises en charge; 4. Résumé: Utilisez d'abord calculé pour améliorer les performances et utilisez des méthodes lors de la réussite des paramètres, de l'exécution d'opérations ou d'éviter le cache, en suivant le principe de "Si vous pouvez utiliser calculé, vous n'utilisez pas de méthodes".

Quels sont les crochets de cycle de vie Vue? Quels sont les crochets de cycle de vie Vue? Aug 05, 2025 am 09:33 AM

VuelifecycleHookSallowyoutoExecUcuDeAtSpecificStagesOfACOmponent’sexistence.1.BoForeCreaterunswhentheComponenSinialized, BeforereActivitySetup.2.CreatediscalledAfterReActivityisTabied, makedataandmethodsavailable, idéalforapicalls.

Comment utiliser GraphQL avec Vue et Apollo Client Comment utiliser GraphQL avec Vue et Apollo Client Aug 16, 2025 am 03:06 AM

Installez les packages de dépendance ApolloClient et associés et configurez le client en fonction de Vue2 ou Vue3; 2. Fournir des instances clients dans VUE3 via ProvideApolloClient et utilisez le plug-in Vueapollo dans Vue2; 3. Utilisez l'API combinée de UseQuery et Usemutation pour initier des requêtes et des changements dans les composants; 4. Utilisez des variables et des réadaptés pour obtenir l'acquisition et la rafraîchissement des données dynamiques, le sondage et les mises à jour facultatifs; 5. Utilisez un état de chargement et d'erreur pour optimiser l'expérience utilisateur et combiner le suspense ou l'anti-tireur pour améliorer la maîtrise de l'interaction; 6. Ajoutez des informations d'authentification via les en-têtes de liaison HTTP et utilisez des caches, des fragments et des fichiers de requête pour organiser et fournir

Comment gérer les variables d'environnement dans un projet VUE Comment gérer les variables d'environnement dans un projet VUE Aug 22, 2025 am 11:38 AM

La gestion des variables d'environnement est cruciale dans les projets VUE et vous devez choisir la bonne façon en fonction de l'outil de construction. 1. Le projet Vuecli utilise le fichier .env avec le préfixe Vue_App_, accessible via process.env.vue_app, comme .env.production; 2. Le projet VITE utilise le préfixe VITE_, accessible via import.meta.env.vite_, comme .env.Staging; 3. Les deux prennent en charge le mode personnalisé pour charger des fichiers correspondants, et le fichier de classe .env.local doit être ajouté à .gitignore; 4. Évitez toujours d'exposer des informations sensibles à l'avant, fournissez .env.example pour référence et vérifiez-la au moment de l'exécution.

Comment utiliser les téléportations dans Vue 3 Comment utiliser les téléportations dans Vue 3 Aug 20, 2025 am 10:30 AM

Teleportinvue3AllowsRenderingAcomponent'stemPlateInadifferentDomLocation whilePreservingitsLogicalPositionIntheComponentTree; 1.TestesthesComponentwithatoatTRributesPecrifiantTheTartDomnode, telas "body" ou "# modal-root"; 2.theteleported "

Aug 22, 2025 am 05:11 AM

Les composants fonctionnels sont utilisés dans Vue2 pour créer des composants de présentation sans état et hautes performances, adaptés aux scénarios qui reposent uniquement sur les accessoires. 1. 2. Enregistrez-vous et transmettez des accessoires et des événements comme des composants normaux lorsqu'ils sont utilisés. 3. Pour gérer les emplacements, vous devez obtenir des emplacements () et des enfants du contexte. Les composants fonctionnels ne conviennent pas aux scénarios où des données réactives, des crochets de cycle de vie ou des modèles V sont nécessaires. Vue3 a supprimé l'option fonctionnelle et l'a remplacée par des composants fonctionnels d'écriture ou de combinaison concise. L'optimisation des performances dépend plus de la comp

Quels sont les avantages de l'utilisation de composants de fichiers uniques (fichiers .vue) dans Vue Quels sont les avantages de l'utilisation de composants de fichiers uniques (fichiers .vue) dans Vue Aug 04, 2025 am 09:39 AM

SingleFileComponents (SFCS) invue.jsimprovedEvelovedByColoCatingTemplate, Script et StyleSinOneFile, réduisant ContextSwitchingAndrenhancingMaintainiability.2.TheySupportScopedcSviatheScopeDatTrut

Comment créer une application mobile avec Vue native Comment créer une application mobile avec Vue native Aug 25, 2025 pm 02:25 PM

Créer une application mobile à l'aide de Vuenative est un moyen efficace d'atteindre le développement de la plate-forme multiplié à l'aide de la syntaxe Vue.js combinée avec ReactNative; 2. Configurez d'abord l'environnement de développement, installez Node.js et Expocli et créez un projet via la commande npxcreate-react-native-appmy-vue-app - templatevue-native; 3. Entrez le répertoire du projet et exécutez NPMSTART, scannez le code QR via l'application Expogo pour le prévisualiser sur l'appareil mobile; 4. Écrivez les composants du fichier .vue, l'utilisation et la structure et faites attention à l'utilisation de composants réactifs minuscules tels que la vue, le texte et les boutons en minuscules

See all articles