programing

Vuex 상태 내에서 맵 사용

prostudy 2022. 6. 18. 09:23
반응형

Vuex 상태 내에서 맵 사용

Vuex에 대해 알아보기 위해 시제품 모듈을 만들고 있는데 간단한 문제에 부딪힙니다.Map제 상태 변수 중 하나로요

Vuex를 사용하여 여러 모듈에 걸쳐 몇 가지 기본 사용자 기본 설정을 저장하고,Mapprefs는 간단한 키/값 쌍으로 처리할 수 있기 때문에 간단한 방법입니다.하지만 내가 정의하지 않았거나Map아니면 내가 변이 안에서 제대로 사용하지 못하고 있어

<script lang="ts">
import Vue from 'vue';
import Vuex from 'vuex';
Vue.use(Vuex);

export default new Vuex.Store({
  state: {
    userSettings: Map,
  },
  mutations: {
    addUserSetting(state, payload) {
      if (state.userSettings == null) {
        state.userSettings = new Map();
      }
      state.userSettings.set(payload.key, payload.value);
    }

  },

})


</script>

기꺼이 다른 오브젝트를 사용할 수 있습니다. 그리고 저는 일련의UserPref잘 안 풀리더라고요

Vue 2는 적절한 지원을 제공하지 않습니다.Map.

키가 문자열이라고 가정하면 오브젝트를 사용하는 것이 좋습니다.완전히 비어 있는 개체를 가져오려면(상속된 속성 없음, 심지어 상속된 속성 없음)toString)를 사용할 수 있습니다.Object.create(null)또는 일반 개체를 사용합니다.{}그럴 필요 없을 것 같으면요

예.

import Vue from 'vue'

export default new Vuex.Store({
  state: {
    userSettings: Object.create(null),
  },
  mutations: {
    addUserSetting(state, payload) {
      Vue.set(state.userSettings, payload.key, payload.value);
    }
  }
})

Vue.set속성을 추가할 때 사용해야 합니다.

언급URL : https://stackoverflow.com/questions/58421221/using-a-map-inside-of-vuex-state

반응형