강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

ultimates님의 프로필 이미지
ultimates

작성한 질문수

Vue.js 중급 강좌 - 웹앱 제작으로 배워보는 Vue.js, ES6, Vuex

스토어 모듈화 방법

모듈화(state)에 대해서 질문드립니다.

작성

·

216

1

state, getters, mutations를 모듈화 하는과정에서 vue 개발자 도구를 보았더니 아래처럼 표시가 되더라구요.

저같은 경우에는 헤더명도 state 에 집어어넣어서 표시하게끔 설정해 두었었는데 왠지모르게 표시가 안되서 header.vue파일에 해당 헤더명 정의 하는곳의 코드를 {{ this.$store.state.todoApp.headerText }}로 변경하니 잘나오는데요. 문제는 mapState를 사용하여 todoItems를 가져오려고 할경우에는 todoItems가 todoApp의 맴버로 인식이되어서 리스트를 가져올  수가 없었습니다. 이럴경우엔 mapState를 어떻게 사용해야하나요?

답변 2

1

ultimates님의 프로필 이미지
ultimates
질문자

답변감사합니다. state라는 오브젝트에서 단계적으로 꺼내야 하는거였군요.... 기존코드는 getters에서 가져오는 방식이라 당연히 문제없이 작동했습니다 ㅎ

1

안녕하세요 얼티밋님, 첨부해주신 데이터 구조 기준으로 아래 코드가 동작 안하나요?

computed: {

   ...mapState({

     myTodoItems: state => state.todoApp.todoItems

   })

}

myTodoItems로 컴포넌트에서 사용하시면 됩니다. 그리고 위와 같이 접근할 때는 객체의 속성의 속성을 접근하기 때문에 todoApp이 비어있진 않은지 보장해주셔야 할 것 같아요 :)

ultimates님의 프로필 이미지
ultimates

작성한 질문수

질문하기