Open hwanfront opened 2 years ago
recoil 도입 시 문제점
사실 편하기도 하고 비동기(api) 불러오는 데 사용되는 react-query 랑 많이 사용해서 추가해봤는데 이슈가 있어서 흠...
nextjs
는 SSR 렌더링, 서버에서 사용자에게 보여줄 페이지를 모두 구성하여 사용자에게 페이지를 보여주는 방식 .
Expectation Violation: Duplicate atom key "userInfo". This is a FATAL ERROR in production. But it is safe to ignore this warning if it occurred because of hot module replacement.
해당 에러는 recoil
의 atom
또는 selector
라는 개념이 여러 번 호출되었을 때 뜨는 에러
원래 react
같은 경우에는 단일 SPA
로 atom
이 한 번 호출되는데 ,
hot reloading
될 때 파일 변경으로 인해 전체 파일이 다시 빌드되면 atom
이 다시 호출되는 경우 저런 메시지가 출력 됨
이거와 관련되서 이슈가 열려있긴 하지만 딱히 고쳐질 것 같진 않을 것 같고, (1년 반 동안 open 상태)
아직까지는 에러메시지가 뜨더라도 멀쩡히 동작하긴 하는데 SSR 관련해서 비슷한 이슈가 있고, 차후에 문제가 될지 알 수 없음
단, redux
나 redux-toolkit
으로 바꿀 경우, 기존 react-query
로 작성된 것도 rtk-query
나 redux-saga
로 바꾸는 게 맞을지도? 현재 react-query
로 작성된 부분이 그렇게 많지는 않을거임 아마도
Global State 관리에 대해서 필요한 이유 예시) 로그인 관련 정보를 부모 컴포넌트 - 하위 컴포넌트 - 하위 컴포넌트 - ... 넘겨주기 귀찮음
단, Redux 쓰려면 기존에 사용하던 react-query를 각각 redux-safa, rtk toolkit 으로 바꿔야 할수도? 이건 알아봐야함