Maison interface Web Voir.js Comparaison des solutions de bus d'événements dans la communication des composants Vue

Comparaison des solutions de bus d'événements dans la communication des composants Vue

Jul 19, 2023 am 08:50 AM
组件通信 vue事件总线 方案比较

Comparaison des solutions de bus d'événements dans la communication des composants Vue

Dans le développement de Vue, la communication entre les composants est une tâche importante. Vue propose plusieurs façons de communiquer entre les composants, dont l'une via le bus d'événements. Cet article comparera les solutions de bus d'événements dans la communication des composants Vue et donnera des exemples de code correspondants.

  1. Utiliser des événements personnalisés

Vue fournit les méthodes $emit et $on pour déclencher et écouter des événements personnalisés. Voici un exemple simple :

// Bus.js
import Vue from 'vue'
export const bus = new Vue()

// ComponentA.vue
import { bus } from './Bus'
export default {
méthodes : {

handleClick() {
  bus.$emit('customEvent', 'This is a custom event.')
}
Copier après la connexion

}
}

// ComponentB.vue
import { bus } from './Bus'
export default {
Mounted() {

bus.$on('customEvent', msg => {
  console.log(msg) // 输出:This is a custom event.
})
Copier après la connexion

}
}

Utiliser custom La méthode de l'événement est très simple, déclenchant et écoutant des événements personnalisés via l’instance de bus. Cependant, cette méthode présente un inconvénient, à savoir que l’espace de noms des événements est source de confusion et sujet aux conflits.

  1. Utiliser vuex

Vuex est la bibliothèque officielle de gestion d'état de Vue En plus de gérer l'état de l'application, elle peut également être utilisée pour implémenter la communication entre les composants. Voici un exemple :

// store.js
importer Vue depuis 'vue'
importer Vuex depuis 'vuex'

Vue.use(Vuex)

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

message: ''
Copier après la connexion

},
mutations : {

setMessage(state, payload) {
  state.message = payload
}
Copier après la connexion

}
})

// ComponentA.vue
export default {
méthodes : {

handleClick() {
  this.$store.commit('setMessage', 'This is a message from ComponentA.')
}
Copier après la connexion

}
}

// ComponentB.vue
export default {
calculé : {

message() {
  return this.$store.state.message
}
Copier après la connexion

}
}

Dans cet exemple, la communication entre les composants est gérée via la boutique Vuex. Soumettez les mutations en appelant la méthode commit, modifiant ainsi l'état du magasin. Ensuite, lisez l’état du magasin via la propriété calculée dans d’autres composants.

L'avantage d'utiliser Vuex est qu'il fournit un mécanisme de gestion d'état unifié, simplifiant la communication entre les composants. Cependant, pour les petites applications, le coût d'introduction de Vuex peut être relativement élevé.

  1. Utiliser la bibliothèque de bus d'événements

En plus des événements personnalisés et de Vuex, il existe également des bibliothèques de bus d'événements tierces qui peuvent implémenter la communication entre les composants, tels que EventBus et mitt. Voici un exemple utilisant EventBus :

// EventBus.js
import Vue from 'vue'
export default new Vue()

// ComponentA.vue
import EventBus from './EventBus'
export default {
méthodes : {

handleClick() {
  EventBus.$emit('customEvent', 'This is a custom event.')
}
Copier après la connexion

}
}

// ComponentB.vue
import EventBus from './EventBus'
export default {
Mounted() {

EventBus.$on('customEvent', msg => {
  console.log(msg) // 输出:This is a custom event.
})
Copier après la connexion

}
}

Utilisation d'EventBus et événements personnalisés Très similaire, événement le déclenchement et la surveillance sont implémentés en instanciant Vue et en l'exportant. Semblable aux événements personnalisés, cette approche pose également le problème de la confusion des espaces de noms.

Résumé :

Cet article compare les solutions de bus d'événements dans la communication des composants Vue : événements personnalisés, Vuex et bibliothèques de bus d'événements. En fonction de vos besoins spécifiques, vous pouvez choisir une solution adaptée. Les événements personnalisés sont simples et faciles à utiliser et conviennent aux petites applications ; Vuex fournit un mécanisme de gestion d'état unifié et convient aux grandes applications ; la bibliothèque de bus d'événements fournit plus de fonctions et peut gérer les événements de manière flexible.

Selon l'ampleur et les besoins du projet, la sélection rationnelle de la solution de communication de composants appropriée peut améliorer 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

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)

Vue et Vue-Router : Comment partager des données entre composants ? Vue et Vue-Router : Comment partager des données entre composants ? Dec 17, 2023 am 09:17 AM

Vue et Vue-Router : Comment partager des données entre composants ? Introduction : Vue est un framework JavaScript populaire pour créer des interfaces utilisateur. Vue-Router est le gestionnaire de routage officiel de Vue, utilisé pour implémenter des applications monopage. Dans les applications Vue, les composants sont les unités de base pour créer des interfaces utilisateur. Dans de nombreux cas, nous devons partager des données entre différents composants. Cet article présentera quelques méthodes pour vous aider à réaliser le partage de données dans Vue et Vue-Router, et

Communication des composants Vue : utilisation des fonctions de rappel pour la communication des composants Communication des composants Vue : utilisation des fonctions de rappel pour la communication des composants Jul 09, 2023 pm 07:42 PM

Communication des composants Vue : utilisation des fonctions de rappel pour la communication des composants Dans les applications Vue, nous devons parfois laisser différents composants communiquer entre eux afin qu'ils puissent partager des informations et collaborer les uns avec les autres. Vue propose diverses façons d'implémenter la communication entre les composants, l'une des méthodes les plus courantes consiste à utiliser des fonctions de rappel. Une fonction de rappel est un mécanisme dans lequel une fonction est passée en argument à une autre fonction et est appelée lorsqu'un événement spécifique se produit. Dans Vue, nous pouvons utiliser des fonctions de rappel pour implémenter la communication entre les composants, afin qu'un composant puisse

Comment communiquer entre les composants vue3 ? Une brève analyse des méthodes de communication Comment communiquer entre les composants vue3 ? Une brève analyse des méthodes de communication Apr 21, 2023 pm 07:53 PM

​Dans les projets que nous écrivons vue3, nous communiquerons tous avec des composants en plus d'utiliser la source de données publique pinia, quelles méthodes API plus simples pouvons-nous utiliser ? Ensuite, je vais vous présenter plusieurs façons de communiquer entre les composants parent-enfant et les composants enfant-parent.

Vous présente plusieurs méthodes de communication entre les composants angulaires Vous présente plusieurs méthodes de communication entre les composants angulaires Dec 26, 2022 pm 07:51 PM

Comment communiquer entre les composants angulaires ? L'article suivant vous présentera la méthode de communication des composants dans Angular. J'espère qu'il vous sera utile !

Communication des composants Vue : utilisez la directive v-pre pour ignorer la communication de compilation Communication des composants Vue : utilisez la directive v-pre pour ignorer la communication de compilation Jul 08, 2023 pm 12:36 PM

Communication des composants Vue : ignorer la communication de compilation à l'aide de la directive v-pre Vue est un framework JavaScript populaire pour la création d'interfaces utilisateur. Dans Vue, les composants sont les unités de base pour créer des interfaces. La communication entre les composants est une exigence courante dans le développement de Vue et est généralement implémentée à l'aide d'accessoires et d'événements. Cependant, nous pouvons parfois souhaiter avoir un moyen spécial de communication entre les composants, c'est-à-dire une communication qui ignore la compilation. Cette méthode de communication peut être réalisée à l'aide de l'instruction v-pre. Cet article explique comment utiliser

Comment communiquer entre les composants ? Inventaire des méthodes de communication des composants Vue (à collectionner) Comment communiquer entre les composants ? Inventaire des méthodes de communication des composants Vue (à collectionner) Aug 19, 2022 pm 08:04 PM

Comment communiquer entre les composants Vue ? Cet article fait le point sur les 10 méthodes de communication des composants de Vue2 et Vue3. J'espère qu'il sera utile à tout le monde !

Comment communiquer entre les composants Vue ? Brève analyse de six méthodes Comment communiquer entre les composants Vue ? Brève analyse de six méthodes Mar 22, 2023 pm 04:54 PM

Comment communiquer entre les composants Vue ? L'article suivant vous présentera les six modes de communication des composants Vue. J'espère qu'il vous sera utile !

Comparaison des solutions de bus d'événements dans la communication des composants Vue Comparaison des solutions de bus d'événements dans la communication des composants Vue Jul 19, 2023 am 08:50 AM

Comparaison des solutions de bus d'événements dans la communication des composants Vue Dans le développement de Vue, la communication entre les composants est une tâche importante. Vue propose plusieurs façons de communiquer entre les composants, dont l'une via le bus d'événements. Cet article comparera les solutions de bus d'événements dans la communication des composants Vue et donnera des exemples de code correspondants. Utilisation d'événements personnalisés Vue fournit les méthodes $emit et $on pour déclencher et écouter des événements personnalisés. Voici un exemple simple : //Bus.js

See all articles