Maison interface Web Voir.js Quelles sont les méthodes de transfert de données pour la communication des composants Vue ?

Quelles sont les méthodes de transfert de données pour la communication des composants Vue ?

Jul 17, 2023 pm 02:13 PM

Quelles sont les méthodes de transfert de données pour la communication des composants Vue ?

Dans le développement de Vue, la communication entre les composants est un élément très important. Grâce à la communication entre les composants, le transfert de données et l'interaction entre les différents composants peuvent être réalisés. Vue fournit une variété de façons d'implémenter la communication entre composants, notamment les accessoires, l'émission, la fourniture/l'injection, Vuex, etc. Cet article explique ces différentes méthodes de transfert de données et fournit des exemples de code correspondants.

  1. props et $emit

props sont utilisés par le composant parent pour transmettre des données au composant enfant, et le composant enfant reçoit les données transmises via les accessoires. $emit est utilisé par le composant enfant pour transmettre des données au composant parent. Le composant enfant déclenche des événements et transmet des données au composant parent via $emit. T & lt; modèle & gt;

& lt; div & gt;

<child-component :message="message" @update="updateMessage"></child-component>
<p>父组件收到子组件传递过来的数据:{{message}}</p>
Copier après la connexion
e
& lt;/div & lt;/test & lt; export default {

components: {
  ChildComponent
},
data() {
  return {
    message: ''
  }
},
methods: {
  updateMessage(newMessage) {
    this.message = newMessage
  }
}
Copier après la connexion

}


provide/inject

provide et inject sont une paire d'options pour transmettre des données entre des composants hiérarchiques. Ceci est réalisé en fournissant des données via des composants parents et en injectant des données dans. composants enfants. L'option provide fournit des données et l'option inject injecte des données. T & lt; modèle & gt;

& lt; div & gt;

<input type="text" v-model="message" />
<button @click="sendMessage">传递数据给父组件</button>
Copier après la connexion
e

& lt;/div & lt;

& lt;/test & gt; '

export default {

data() {
  return {
    message: ''
  }
},
methods: {
  sendMessage() {
    this.$emit('update', this.message)
  }
}
Copier après la connexion

}


Vuex


Vuex est le modèle de gestion d'état officiellement fourni par Vue, qui est utilisé pour gérer de manière centralisée les données partagées entre les composants. Le transfert de données et l'interaction entre les composants sont réalisés via l'état, les getters, les mutations, les actions, etc. de Vuex.
  1. // store.js
  2. importer Vue depuis 'vue'
importer Vuex depuis 'vuex'

Vue.use(Vuex)


exporter par défaut le nouveau Vuex.Store({

état : {

<p>父组件提供数据:{{message}}</p>
<child-component></child-component>
Copier après la connexion

},

getters : {

components: {
  ChildComponent
},
provide() {
  return {
    message: 'Hello World!'
  }
}
Copier après la connexion

},

mutations : {

<p>子组件注入数据:{{message}}</p>
Copier après la connexion

},

actions : {

inject: ['message']
Copier après la connexion

}

})

// ParentComponent.vue

<script><br> importer ChildComponent depuis './ChildComponent'</p> importer { mapGetters, mapActions } depuis 'vuex'<ol start="3"><li>export par défaut {</li><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>getMessage: state =&gt; state.message</pre><div class="contentsignin">Copier après la connexion</div></div></ol>}<p></script>

// ChildComponent.vue


<script></p> import { mapGetters } from 'vuex'<p><br>export default { </p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>changeMessage({ commit }, payload) { commit('updateMessage', payload) }</pre><div class="contentsignin">Copier après la connexion</div></div></p> <p>}<br></script>

Vous trouverez ci-dessus plusieurs méthodes de transfert de données courantes pour la communication des composants Vue. Chaque méthode a ses propres scénarios applicables. Choisissez la méthode appropriée pour le transfert de données en fonction des besoins réels. En utilisant rationnellement ces méthodes, une communication flexible et efficace entre les composants peut être obtenue, améliorant ainsi l'efficacité du développement et la qualité du code.

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

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

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)

Qu'est-ce que Vuex et comment l'utiliser pour la gestion de l'État dans les applications VUE? Qu'est-ce que Vuex et comment l'utiliser pour la gestion de l'État dans les applications VUE? Mar 11, 2025 pm 07:23 PM

Cet article explique Vuex, une bibliothèque de gestion de l'État pour Vue.js. Il détaille les concepts de base (état, getters, mutations, actions) et démontre l'utilisation, en mettant l'accent sur ses avantages pour les projets plus importants sur des alternatives plus simples. Débogage et structuri

Comment implémenter des techniques de routage avancées avec le routeur VUE (routes dynamiques, routes imbriquées, gardes de route)? Comment implémenter des techniques de routage avancées avec le routeur VUE (routes dynamiques, routes imbriquées, gardes de route)? Mar 11, 2025 pm 07:22 PM

Cet article explore les techniques avancées du routeur Vue. Il couvre le routage dynamique (utilisant des paramètres), les routes imbriquées pour la navigation hiérarchique et les gardes d'itinéraire pour contrôler l'accès et la récupération des données. Meilleures pratiques pour gérer la route complexe confr

Comment créer et utiliser des plugins personnalisés dans vue.js? Comment créer et utiliser des plugins personnalisés dans vue.js? Mar 14, 2025 pm 07:07 PM

L'article discute de la création et de l'utilisation des plugins Vue.js personnalisés, y compris les meilleures pratiques de développement, d'intégration et de maintenance.

Comment utiliser les tremblements d'arbres dans Vue.js pour supprimer le code inutilisé? Comment utiliser les tremblements d'arbres dans Vue.js pour supprimer le code inutilisé? Mar 18, 2025 pm 12:45 PM

L'article discute de l'utilisation des tremblements d'arbre dans Vue.js pour supprimer le code inutilisé, des détails de configuration avec des modules ES6, une configuration de webpack et des meilleures pratiques pour une implémentation efficace. Count de chargement: 159

Comment configurer VUE CLI pour utiliser différentes cibles de construction (développement, production)? Comment configurer VUE CLI pour utiliser différentes cibles de construction (développement, production)? Mar 18, 2025 pm 12:34 PM

L'article explique comment configurer VUE CLI pour différentes cibles de build, commutation des environnements, optimiser les versions de production et assurer des cartes source dans le développement du débogage.

Quelles sont les principales caractéristiques de Vue.js (architecture basée sur les composants, DOM virtuel, liaison réactive des données)? Quelles sont les principales caractéristiques de Vue.js (architecture basée sur les composants, DOM virtuel, liaison réactive des données)? Mar 14, 2025 pm 07:05 PM

Vue.js améliore le développement Web avec son architecture basée sur des composants, son DOM virtuel pour les performances et la liaison des données réactives pour les mises à jour de l'interface utilisateur en temps réel.

Comment utiliser Vue avec Docker pour le déploiement conteneurisé? Comment utiliser Vue avec Docker pour le déploiement conteneurisé? Mar 14, 2025 pm 07:00 PM

L'article discute de l'utilisation de Vue avec Docker pour le déploiement, en se concentrant sur la configuration, l'optimisation, la gestion et la surveillance des performances des applications VUE dans les conteneurs.

Comment puis-je contribuer à la communauté Vue.js? Comment puis-je contribuer à la communauté Vue.js? Mar 14, 2025 pm 07:03 PM

L'article traite de diverses façons de contribuer à la communauté Vue.js, notamment l'amélioration de la documentation, la réponse aux questions, le codage, la création de contenu, l'organisation d'événements et le soutien financier. Il couvre également s'impliquer dans le projet open-source

See all articles