2017-09-01 3 views
1

Innerhalb eines vuex Getter Ich weiß, es möglich ist, den Zustand von einem anderen vuex Modul zugreifen wie so: obwohlWie kann man von einem anderen Vuex-Modul auf den Getter zugreifen?

pages: (state, getters, rootState) => { 
    console.log(rootState); 
} 

Wie kann ich einen Getter aus einem anderen vuex Modul zugreifen, anstatt des Staates?

Ich habe einen anderen vuex Modul namens Filter, die ich zugreifen müssen, ich habe dies versucht:

rootState.filters.activeFilters 

Wo activeFilters meine Getter sind aber das funktioniert nicht. mit rootState.filters.getters.activeFilters funktioniert auch nicht.

Antwort

6

Hatte durch die Dokumentation zu graben, aber ich fand es:

https://vuex.vuejs.org/en/api.html

(Strg + F Suche nach RootGetters auf dieser Seite)

Mein Code wird:

pages: (state, getters, rootState, rootGetters) => {} 

Beachten Sie, dass alle rootGetters global sind und Sie sie nicht mehr wie rootState verwenden, wo Sie den Status durch den Modulnamen voranstellen würden.

Sie rufen einfach einen Getter aus einem anderen Modul wie folgt:

rootGetters.activeFilters 

Hoffentlich jemand aus in der Zukunft helfen wird, die in das so gut läuft.

+6

Wenn das Modul des Getters, auf den Sie zugreifen, Namespaced ist, müssen Sie 'rootGetters ['moduleName/getterName']' 'verwenden. – thanksd

+0

Danke, gute Ergänzung. –

Verwandte Themen