Maison > interface Web > Voir.js > Comment utiliser vuex pour la communication des composants dans Vue ?

Comment utiliser vuex pour la communication des composants dans Vue ?

PHPz
Libérer: 2023-07-19 18:16:49
original
923 Les gens l'ont consulté

Comment utiliser Vuex pour la communication entre composants dans Vue ?

Vue est un framework JavaScript populaire qui adopte un modèle de développement basé sur des composants, nous permettant de créer plus facilement des applications complexes. Dans le processus de développement de composants de Vue, nous rencontrons souvent des situations nécessitant une communication entre différents composants. Vuex est l'outil de gestion d'état officiellement recommandé par Vue. Il fournit un gestionnaire de stockage centralisé et résout le problème de communication entre les composants. Cet article expliquera comment utiliser Vuex pour la communication de composants dans Vue, avec des exemples de code.

Tout d’abord, nous devons installer Vuex. Vous pouvez utiliser la commande npm ou Yarn pour installer :

npm install vuex
Copier après la connexion

ou

yarn add vuex
Copier après la connexion

Une fois l'installation terminée, introduisez Vuex dans le fichier d'entrée Vue (généralement main.js) et créez une nouvelle instance Vuex :

import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

const store = new Vuex.Store({
  state: {
    // 在这里定义你的状态
  },
  mutations: {
    // 在这里定义你的状态变更函数
  },
  actions: {
    // 在这里定义你的异步操作函数
  },
  getters: {
    // 在这里定义你的计算属性
  }
})

new Vue({
  store,  // 将store注入到Vue实例中
  render: h => h(App)
}).$mount('#app')
Copier après la connexion

comme mentionné ci-dessus. Dans le code, nous créons une instance Vuex et définissons quatre parties : l'état, les mutations, les actions et les getters. L'état est utilisé pour stocker les données dans l'application, les mutations sont utilisées pour modifier les données d'état, les actions sont utilisées pour gérer les opérations asynchrones et les getters sont utilisés pour calculer les états dérivés.

Avec les paramètres ci-dessus, nous avons réussi à créer un magasin global et à l'injecter dans l'instance Vue.

Ensuite, nous pouvons utiliser Vuex dans le composant pour communiquer. Tout d'abord, nous devons introduire Vuex dans le composant et utiliser mapState et mapGetters pour mapper les données dans l'état et les getters :

import { mapState, mapGetters } from 'vuex'

export default {
  computed: {
    ...mapState(['count']),
    ...mapGetters(['doubleCount'])
  },
  methods: {
    // 在这里定义你的方法
  }
}
Copier après la connexion

Dans le code ci-dessus, nous utilisons deux fonctions auxiliaires, mapState et mapGetters, pour mapper les données dans l'état et les getters. respectivement. Les données sont mappées dans la propriété calculée du composant.

Ensuite, nous pouvons utiliser ces données dans le modèle :

<template>
  <div>
    <p>Count: {{ count }}</p>
    <p>Double Count: {{ doubleCount }}</p>
  </div>
</template>
Copier après la connexion

Dans le code du modèle ci-dessus, nous utilisons la syntaxe à double accolade pour afficher les données mappées sur la page.

Ensuite, supposons que nous devions modifier la valeur de count dans le composant. Nous pouvons utiliser la fonction d'assistance mapMutations pour mapper les méthodes des mutations aux méthodes du composant :

import { mapState, mapMutations } from 'vuex'

export default {
  computed: {
    ...mapState(['count'])
  },
  methods: {
    ...mapMutations(['increment']),
    incrementCount() {
      this.increment() // 调用increment方法
    }
  }
}
Copier après la connexion

Dans le code ci-dessus, nous mappons la méthode d'incrémentation au composant via mapMutations, puis nous pouvons l'appeler dans la méthode.

Dans le modèle, nous pouvons déclencher la méthode IncreaseCount via l'événement @click :

<template>
  <div>
    <p>Count: {{ count }}</p>
    <button @click="incrementCount">Increment</button>
  </div>
</template>
Copier après la connexion

Jusqu'à présent, nous avons utilisé avec succès Vuex dans Vue pour la communication des composants. Grâce au stockage centralisé de Vuex, nous pouvons gérer et partager plus facilement les données entre les composants. J'espère que cet article pourra vous aider à comprendre comment utiliser Vuex pour la communication des composants dans Vue.

Ce qui précède représente l’intégralité du contenu de cet article, j’espère qu’il pourra vous être utile. Bonne chance avec votre développement Vue !

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!

Étiquettes associées:
source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal