programing

Vuex - mapGetters 등이지만 파라미터에 의한 매핑

kingscode 2022. 7. 11. 23:36
반응형

Vuex - mapGetters 등이지만 파라미터에 의한 매핑

스토어에서 데이터를 가져오는 일반 필터 구성 요소를 생성하려고 합니다.

지금 제가 쓰고 있는 게mapGetters그렇게

...mapGetters({
  items: 'filters'
}),

하지만 제가 매핑하고 있는 게터(getter)를 일반화할 수 있으면 좋겠습니다.

props: {
  filterType: String
},

computed: {
    ...mapGetters({
    items: this.filterType
  }),
}

이로 인해 다음과 같은 오류가 발생합니다.

Cannot read property 'nombre' of undefined

제가 할 수 있는 건

computed: {
  items: function () {
      return this.$store.getters[this.filterType]
  }
}

vue 인스턴스의 속성을 mapGetters와 함께 사용하는 방법이 있는지, 아니면 getters 이름을 하드코드로 엄밀하게 구분해야 하는지 확인하려고 합니다.

이것이 당신이 찾고 있는 것일 수도 있습니다(또는 적어도 사용법에 가장 가까운 경우).mapGetters):

props: {
   filterType: String
},

computed: {
  ...mapState({
    items(state, getters) {
      return getters[this.filterType];
    }
  })
}

언급URL : https://stackoverflow.com/questions/57534861/vuex-mapgetters-et-al-but-mapping-by-parameter

반응형