После создания проекта с ApiPlatform и генерации кода с помощью генератора кода VueJs Мне не удалось отправить некоторые действия ... Вот пример:
файл основного магазина
export default new Vuex.Store({
modules: {
...
producto,
...
}
})
файл основного продукта producto
export default {
namespaced: true,
modules: {
list, //here is the action I want to use
create,
update,
show,
del
}
}
файл основного продукта / списка хранения
import * as actions from './actions'
import * as getters from './getters'
import mutations from './mutations'
export default {
namespaced: true,
state: {
error: '',
isLoading: false,
items: [],
view: []
},
actions,
getters,
mutations
}
файл действий
const getItems = ({ commit }, page = '/productos') => {
commit(types.TOGGLE_LOADING)
fetch(page)
.then(response => response.json())
.then((data) => {
commit(types.TOGGLE_LOADING)
commit(types.SET_ITEMS, data['hydra:member'])
commit(types.SET_VIEW, data['hydra:view'])
})
.catch((e) => {
commit(types.TOGGLE_LOADING)
commit(types.SET_ERROR, e.message)
})
}
export default getItems
В компоненте я сопоставляю получатель для товаров из магазина producto и получаю пустой массив (как и ожидалось).но когда я вызываю this.$store.dispatch('producto/list/getItems')
vuex выдает ошибку, потому что нет такого действия getItems.
Я не знаю, почему работает геттер, но действие не работает.
Любой совет?Мне нужно вызвать это действие, чтобы заполнить массив товаров из магазина producto.
Заранее спасибо