Table des matières
{{ count }}
{{ message }}
Maison interface Web Voir.js Comment partager et transférer des données dans les composants Vue

Comment partager et transférer des données dans les composants Vue

Oct 08, 2023 am 11:00 AM
Partage de données : vuex Transfert de données : accessoires Communication des composants : eventbus

Comment partager et transférer des données dans les composants Vue

Comment réaliser le partage et le transfert de données dans les composants Vue

Dans Vue, les composants sont au cœur de la création d'applications Web. Au sein des composants, le partage et le transfert de données sont très importants. Cet article présentera en détail comment partager et transférer des données dans les composants Vue et fournira des exemples de code spécifiques.

Le partage de données fait référence au partage des mêmes données entre plusieurs composants. Le partage de données peut être réalisé même si ces composants sont situés dans des hiérarchies différentes. Le transfert de données fait référence au transfert de données d'un composant à un autre, généralement via le transfert entre les composants parent et enfant.

  1. Partage de données

1.1 Utilisation de Vuex

Vuex est un mode de gestion d'état fourni par Vue, qui peut facilement permettre à plusieurs composants de partager les mêmes données. Voici un exemple simple d'utilisation de Vuex pour réaliser le partage de données :

// store.js
import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

export default new Vuex.Store({
  state: {
    count: 0
  },
  mutations: {
    increment(state) {
      state.count++
    }
  }
})

// App.vue
<template>
  <div>
    <h1 id="count">{{ count }}</h1>
    <button @click="increment">Increment</button>
  </div>
</template>

<script>
export default {
  computed: {
    count() {
      return this.$store.state.count
    }
  },
  methods: {
    increment() {
      this.$store.commit('increment')
    }
  }
}
</script>
Copier après la connexion

Dans l'exemple ci-dessus, nous partageons des données en important Vuex et en créant un objet de magasin. Dans le composant App.vue, obtenez les données de décompte partagées via l'attribut calculé et appelez la méthode d'incrémentation via l'attribut méthodes pour mettre à jour les données. A noter que dans chaque composant devant partager des données, vous devez importer Vuex et utiliser l'état correspondant.

1.2 Utilisation de provide et inject

En plus d'utiliser Vuex, Vue fournit également un moyen plus simple de partager des données, en utilisant provide et inject. Voici un exemple d'utilisation de provide et inject pour réaliser le partage de données :

// App.vue
<template>
  <div>
    <h1 id="count">{{ count }}</h1>
    <button @click="increment">Increment</button>
  </div>
</template>

<script>
export default {
  data() {
    return {
      count: 0
    }
  },
  provide() {
    return {
      count: this.count,
      increment: this.increment
    }
  },
  methods: {
    increment() {
      this.count++
    }
  }
}
</script>

// Child.vue
<template>
  <div>
    <h2 id="count">{{ count }}</h2>
    <button @click="increment">Increment in Child</button>
  </div>
</template>

<script>
export default {
  inject: ['count', 'increment']
}
</script>
Copier après la connexion

Dans l'exemple ci-dessus, nous utilisons provide dans le composant parent App.vue pour partager les données de comptage et la méthode d'incrémentation. Utilisez inject dans le composant enfant Child.vue pour injecter les données et les méthodes fournies par le composant parent. De cette manière, les données du composant parent sont directement accessibles et mises à jour dans le composant enfant.

  1. Transfert de données

2.1 Utilisation d'accessoires

Dans Vue, les données peuvent être transmises du composant parent au composant enfant via l'attribut props. Voici un exemple d'utilisation de props pour transmettre des données :

// Parent.vue
<template>
  <div>
    <h1 id="message">{{ message }}</h1>
    <Child :message="message" />
  </div>
</template>

<script>
import Child from './Child.vue'

export default {
  data() {
    return {
      message: 'Hello Vue!'
    }
  },
  components: {
    Child
  }
}
</script>

// Child.vue
<template>
  <div>
    <h2 id="message">{{ message }}</h2>
  </div>
</template>

<script>
export default {
  props: ['message']
}
</script>
Copier après la connexion

Dans l'exemple ci-dessus, nous transmettons les données du message dans le composant parent Parent.vue au composant enfant Child.vue via l'attribut props, et le composant enfant reçoit le composant parent via l'attribut props Les données transmises.

  1. Résumé

Grâce à l'exemple de code ci-dessus, nous avons appris comment partager et transférer des données dans les composants Vue. Vous pouvez choisir une solution adaptée en fonction des besoins spécifiques de votre entreprise pour réaliser le partage et le transfert de données, et améliorer l'efficacité du développement et la maintenabilité des applications Web.

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

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.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

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)

Quelle est la méthode de conversion des chaînes Vue.js en objets? Quelle est la méthode de conversion des chaînes Vue.js en objets? Apr 07, 2025 pm 09:18 PM

L'utilisation de la chaîne JSON.Parse () à l'objet est la plus sûre et la plus efficace: assurez-vous que les chaînes sont conformes aux spécifications JSON et évitez les erreurs courantes. Utilisez Try ... Catch pour gérer les exceptions pour améliorer la robustesse du code. Évitez d'utiliser la méthode EVAL (), qui présente des risques de sécurité. Pour les énormes cordes JSON, l'analyse de fouet ou l'analyse asynchrone peut être envisagée pour optimiser les performances.

Vue.js vs react: Considérations spécifiques au projet Vue.js vs react: Considérations spécifiques au projet Apr 09, 2025 am 12:01 AM

Vue.js convient aux projets de petite et moyenne taille et aux itérations rapides, tandis que React convient aux applications grandes et complexes. 1) Vue.js est facile à utiliser et convient aux situations où l'équipe est insuffisante ou l'échelle du projet est petite. 2) React a un écosystème plus riche et convient aux projets avec des performances élevées et des besoins fonctionnels complexes.

Vue.js est-il difficile à apprendre? Vue.js est-il difficile à apprendre? Apr 04, 2025 am 12:02 AM

Vue.js n'est pas difficile à apprendre, en particulier pour les développeurs avec une fondation JavaScript. 1) Sa conception progressive et son système réactif simplifient le processus de développement. 2) Le développement basé sur les composants rend la gestion du code plus efficace. 3) Les exemples d'utilisation montrent une utilisation de base et avancée. 4) Les erreurs courantes peuvent être déboguées via Vuedevtools. 5) L'optimisation des performances et les meilleures pratiques, telles que l'utilisation des attributs V-IF / V et clés, peuvent améliorer l'efficacité de l'application.

Vue est-elle utilisée pour le frontend ou le backend? Vue est-elle utilisée pour le frontend ou le backend? Apr 03, 2025 am 12:07 AM

Vue.js est principalement utilisé pour le développement frontal. 1) Il s'agit d'un cadre JavaScript léger et flexible axé sur la construction d'interfaces utilisateur et d'applications à une seule page. 2) Le cœur de Vue.js est son système de données réactif, et la vue est automatiquement mise à jour lorsque les données changent. 3) Il prend en charge le développement des composants et l'interface utilisateur peut être divisée en composants indépendants et réutilisables.

Comment utiliser Bootstrap en Vue Comment utiliser Bootstrap en Vue Apr 07, 2025 pm 11:33 PM

L'utilisation de bootstrap dans vue.js est divisée en cinq étapes: installer bootstrap. Importer un bootstrap dans main.js. Utilisez le composant bootstrap directement dans le modèle. Facultatif: style personnalisé. Facultatif: utilisez des plug-ins.

Comment ajouter des fonctions aux boutons pour Vue Comment ajouter des fonctions aux boutons pour Vue Apr 08, 2025 am 08:51 AM

Vous pouvez ajouter une fonction au bouton VUE en liant le bouton dans le modèle HTML à une méthode. Définissez la logique de la fonction de méthode et d'écriture dans l'instance Vue.

Comment référencer le fichier JS avec Vue.js Comment référencer le fichier JS avec Vue.js Apr 07, 2025 pm 11:27 PM

Il existe trois façons de se référer aux fichiers JS dans Vue.js: spécifiez directement le chemin à l'aide du & lt; script & gt; étiqueter;; importation dynamique à l'aide du crochet de cycle de vie monté (); et l'importation via la bibliothèque de gestion de l'État Vuex.

Comment utiliser Watch in Vue Comment utiliser Watch in Vue Apr 07, 2025 pm 11:36 PM

L'option Watch dans Vue.js permet aux développeurs d'écouter des modifications de données spécifiques. Lorsque les données changent, regardez déclenche une fonction de rappel pour effectuer des vues de mise à jour ou d'autres tâches. Ses options de configuration incluent immédiatement, qui spécifie s'il faut exécuter un rappel immédiatement, et profond, ce qui spécifie s'il faut écouter récursivement les modifications des objets ou des tableaux.

See all articles