thunk에 꽂혀 일반 리듀서를 쓰지않아 서버에 저장은 되지만 리렌더링을 할 수 없었던 나의 슬픈 여정....
문제
thunk를 사용하여 서버에 post는 되는데, 페이지가 자동으로 리렌더링 되지 않아서 업데이트된 내용이 반영되지 않음.
시도
window.location.reload();
근데 이건 잘못된 방법이라고 한다..
대체 어떻게해주지
useEffect 사용
서버에서 불러온 값을 의존성 배열에 넣어주면 무한 렌더링 발생..
해결
리덕스 스토어에 불러온 값을 저장해주면 됨..
그러면 state가 변경되면서 리스트가 변할 때 자동으로 리렌더링 됨
useEffect 무한렌더링 부분은
의존성 배열에, 서버에서 get한 값을 JSON.stringify로 깊은복사..해서 넣어주면 됨.
알게된 점
extraReducer - thunk : 서버와 통신할 때 사용
reducer : 전역 상태 관리를 할때 사용