web-dev-qa-db-fra.com

vuex souscrire à une mutation individuelle

Est-il possible de souscrire à une mutation individuelle?

Au lieu de:

this.$store.subscribe((mutation, state) => {
   if(mutation === 'someMutation'){
       doSomething()
   }
})

Je voudrais quelque chose comme ça:

this.$store.subscribe('someMutation', state => {
    doSomething()
})
16
Chris

Que diriez-vous d'encapsuler la méthode que vous avez quelque part dans Vue prototype?

Donc au lieu d'avoir:

this.$store.subscribe((mutation, state) => {
   if(mutation === 'someMutation'){
       doSomething()
   }
})

Vous auriez quelque chose comme:

Vue.prototype.subscribeMutation = function(someMutation, someFunction) {
       this.$store.subscribe((mutation, state) => {
       if(mutation === someMutation){
           someFunction(state)
       }
    })
}

Je n'ai pas testé le code, mais vous devriez pouvoir obtenir le résultat de travail facilement.

2
holmicz