У меня проблемы с использованием Nuxt's Vuex в модулях.
Оказывается, что state
объявляется и появляется в Vuex, действия запускаются, но mutation
изменяет state
, но не фиксируйте изменение и даже не запускайте событие, так как оно не отображается в консоли Vuex devtools под кодом модуля Vuex.
Примечание: в обоих console.log()
выведите состояние, во-первых, пустое, как оно было объявлено, а во-вторых, измененное состояние, но изменение на самом деле не отражается в Vuex.
export const strict = false
export const state = () => ({
address: {}
})
export const mutations = {
setShopAddress(state, address) {
console.log(state)
state.address = address
console.log(state)
}
}
export const actions = {
getAddress({
commit
}) {
this.$axios
.get('/general/address')
.then((response) => {
commit('setShopAddress', response.data)
})
.catch((e) => console.error(e))
},
setAddress(vuexContext, address) {
vuexContext.commit('setShopAddress', address)
}
}
export const getters = {
getShopAddress(state) {
return state.address
}
}