개발/Error note
[redux-toolkit] react_devtools_backend.js:4012 Warning: Received NaN for the `ch
이나당
2022. 12. 17. 00:07

리덕스를 리덕스 툴킷으로 변경하는 중에
react_devtools_backend.js:4012 Warning: Received NaN for the `children` attribute. If this is expected, cast the value to a string.
에러가 떴다. 액션이 없고 상태만 변경하는 버튼들은 문제가 없는데 액션이 들어간 Increment by 5 버튼에서만 에러가 났다.
해결법
// 변경전
increase(state, action) {
state.counter = state.counter + action.amount
},
// 변경후
increase(state, action) {
// 툴킷이 자동으로 액션생성자를 생성하기 때문에 필드명을 꼭 payload로 해줘야함
state.counter = state.counter + action.payload
},
{type: SOME_UNIQUE_IDENTIFIER, payload: 10} 이런식으로
리덕스 툴킷에서는 툴킷이 자동으로 위처럼 액션 생성자를 생성해준다.
이 때 중요한건 필드명을 자동으로 payload로 지정하기때문에 툴킷을 사용할때는 꼭 payload로 필드명을 바꿔주어야한다.

짜잔 이제 action이 정상적으로 잘들어간다
반응형