Published 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이 정상적으로 잘들어간다
반응형
'개발 > Error note' 카테고리의 다른 글
[React] Parsing error: Invalid parenthesized assignment pattern. (19:23) 해결 (2) | 2022.12.23 |
---|---|
[VSC] Prettier 설정이 안먹히는 것 같을 때 (0) | 2022.12.21 |
[React] 'React' must be in scope when using JSX react/react-in-jsx-scope 해결 (2) | 2022.12.13 |
[React] Unreachable code (해결) (0) | 2022.12.09 |
[node] error:03000086:digital envelope routines::initialization error 해결 (0) | 2022.12.03 |