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

느루님의 프로필 이미지
느루

작성한 질문수

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

[리팩토링] mutations로 할 일 추가, 완료, 모두 삭제 구현

payload라는 하나의 객체로 묶었을 때와 묶지 않았을 때

작성

·

320

1

toggleOneItem()의 인자로 todoItem, index를 별개로 넣어주었을 때와 { todoItem, index } 라는 하나의 객체로 묶어서 전달했을 때 toggleOneItem() 함수의 실행결과가 다르네요.

전자의 경우, completed 가 없다는 식의 TypeError가 발생하고, 후자의 방식대로 해야 에러 없이 정상적으로 실행됩니다.

둘 사이에 어떤 동작 차이가 있는 건가요??

답변 3

0

저도 윗분처럼 객체로 안 넘기고 변수 각각 넘기니 completed가 없다는 에러가 나네요. 분명 commit으로 넘기기 전 각 변수 값 들은건 로그로도 확인했는데요..

this.$store.commit('toggleOneItem', todoItem, index)로 넘기고 store에서 state.todoItems[index].completed 형태로 받으니 에러 발생했습니다.

0

저는 payload를 사용하면 에러가 나타나내요 허헣

0

안녕하세요 느루님, 말씀해 주신 상황의 코드와 에러 메시지도 같이 첨부해 주시겠어요? 제가 잘 이해가 안되네요..!

느루님의 프로필 이미지
느루

작성한 질문수

질문하기