web-dev-qa-db-fra.com

Vuex | Comment valider une mutation globale dans une action de module?

J'ai une action dans un module avec espace de noms et une mutation globale (c'est-à-dire pas dans un module). J'aimerais pouvoir commettre la mutation globale au sein de l'action.

// Global mutation
export default {
  globalMutation (state, payload) {
    ...
  }
}

// Action in a namespaced module
export default {
  namespaced: true,

  actions: {
    namespacedAction ({ commit, dispatch, state }, payload) {
      commit({ type: 'globalMutation' })
    }
  }
}

Lorsque l'action de l'espace de noms est envoyée, Vuex affiche:

[vuex] unknown local mutation type: globalMutation, global type: module/globalMutation

Existe-t-il une option que je peux passer à la fonction commit pour appeler cette mutation globale?

22
Julien Le Coupanec

On dirait que je viens de trouver un moyen avec le { root: true } paramètre.

commit('globalMutation', payload, { root: true })
51
Julien Le Coupanec