programing

Nux.js Vuex 모듈이 예상대로 작동하지 않음

abcjava 2023. 6. 25. 18:12
반응형

Nux.js Vuex 모듈이 예상대로 작동하지 않음

Nux의 Vuex를 모듈에 사용하는 것에 문제가 있습니다.

밝혀진 바에 따르면state선언되고 Vuex에 표시되며 작업이 트리거되지만mutation를 변경합니다.stateVuex 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
  }
}

여러 시간이 지난 후, Nuxton Telegram 그룹 덕분에 해결책을 찾을 수 있었습니다. nuxtServerInit에 비동기를 설정하고 실행 요청을 기다리기만 하면 되었습니다.

아래 코드:

async nuxtServerInit({ dispatch }) {
    await dispatch('module/action')
},

내 대답이 더 많은 사람들에게 도움이 되었으면 좋겠습니다.

언급URL : https://stackoverflow.com/questions/60239521/nuxt-js-vuex-module-not-working-as-expected

반응형