2017-06-18 3 views
4

Ich habe eine Aktion in einem Namespace-Modul und eine globale Mutation (d. H. Nicht in einem Modul). Ich wäre gerne in der Lage, die globale Mutation innerhalb der Aktion zu begehen.Vuex | Wie begehe ich eine globale Mutation in einer Modulaktion?

// 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' }) 
    } 
    } 
} 

Wenn die Namespace Aktion ausgelöst wird, Vuex angezeigt:

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

Gibt es eine Möglichkeit, die ich an die commit Funktion übergeben kann diese globale Mutation zu nennen?

Antwort

9

Sieht aus wie ich gerade einen Weg mit dem { root: true } Parameter gefunden habe.

commit('globalMutation', payload, { root: true }) 
Verwandte Themen