Dans un getter vuex, je sais qu'il est possible d'accéder à l'état depuis un autre module vuex comme ceci:
pages: (state, getters, rootState) => {
console.log(rootState);
}
Comment puis-je accéder à un getter depuis un autre module vuex au lieu de l'état?
J'ai un autre module vuex appelé filtres auquel j'ai besoin d'accéder, j'ai essayé ceci:
rootState.filters.activeFilters
Où activeFilters
est mon getter mais cela ne fonctionne pas. en utilisant rootState.filters.getters.activeFilters
aussi ne fonctionne pas.
J'ai dû fouiller dans la documentation mais je l'ai trouvée:
https://vuex.vuejs.org/en/api.html
(Ctrl + F recherche RootGetters sur cette page)
Mon code devient:
pages: (state, getters, rootState, rootGetters) => {}
Attention, tous les rootGetters sont globaux et vous ne les utilisez plus comme rootState où vous préfixeriez l'état par le nom du module.
Vous appelez simplement un getter depuis un autre module comme ceci:
rootGetters.activeFilters
J'espère que cela aidera quelqu'un dans le futur à le rencontrer également.