Estoy intentando registrar un módulo Vuex sin éxito. Aquí está mi código:
tiendas/index.js:
import Vuex from 'vuex'; import resourcesModule from './resources'; import axios from '@/helpers/axiosInterceptor'; Vue.use(Vuex); export default new Vuex.Store({ modules: { resources: resourcesModule }, state: {...}})tiendas/recursos/index.js
export default { state: { resources: [] }, actions: { fetchResources(store) { const request = axios.get('/api/musical_resources'); request.then((res) => { store.commit('setResources', res.data);; }); return request; } }, mutations: { setResources(state, payload) { state.resources = payload; } }, getters: { resources({resources}) { return resources; } } };Estoy tratando de enviar la acción "fetchResources" desde otro componente y eso me da "[vuex] tipo de acción desconocido: fetchResources"
Cuando inspecciono el objeto de la tienda, en la propiedad _modules solo está la propiedad "raíz", por lo que sospecho que tal vez me estoy perdiendo algo al registrar el módulo.
Cuando consola.log(resourcesModules); en el archivo stores/index.js todo se ve bien.
Entonces, ¿cuál es mi problema? Muchísimas gracias
EDITAR:
También probé esto en stores/index.js:
import Vue from 'vue'; import Vuex from 'vuex'; import axios from '@/helpers/axiosInterceptor'; Vue.use(Vuex); export default new Vuex.Store({ modules: { resources: { state() { return { resources: [] } }, actions: { fetchResources(store) { const request = axios.get('/api/musical_resources'); request.then((res) => { store.commit('setResources', res.data);; }); return request; } }, mutations: { setResources(state, payload) { state.resources = payload; } }, getters: { resources({ resources }) { return resources; } } } }, state: {...}})Sin éxito
Prueba de esta manera:
export default new Vuex.Store({ modules: { resourcesModule }, state: {...}}) para enviar fetchResources
o
export default new Vuex.Store({ modules: { resources: resourcesModule }, state: {...}}) para enviar resources.fetchResources