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

suny_fun님의 프로필 이미지
suny_fun

작성한 질문수

[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스

32-02-opengraph-provider-with-ssr

리코일스테이트 사용후 문제점

해결된 질문

작성

·

226

0

codecamp 폴더 안에 각각 class폴더와 퀴즈, 프리보드 폴더를 사용중입니다. 그리고 수업내용에 따라 useRecoilState를 만들어놓고 각각 사용중인데, 수업을 따라하다보니 리코일스테이트의 네이밍이 isEditState, accessTokenState 이런식으로 다 같아서 혹시나 그것때문에 오류가 발생하나 싶어서 이름을 각각 다 변경해 보았지만 터미널에의 오류메세지는 계속 발생하네요. 이 부분은 무엇이 잘못되어서 이런 메세지가 뜨는 것인가요? 그리고 이 메세지를 안뜨게 하는 방법이 있을까요?

스크린샷 2024-01-30 16.48.24.png

답변 2

0

노원두님의 프로필 이미지
노원두
지식공유자

안녕하세요! suny_fun님!

현재 듣고계신 파트가 32섹션을 듣고 계시기 때문에 아래의 설명이 이해되실 것이라고 생각되는데요!

리코일의 경우, key가 중복되면 안되는데 서버에서 실행 후 동일한 key로 브라우저에서 다시 실행되는 과정에서 key 중복 문제가 발생한 것이랍니다!

key가 중복되지 않도록 key: "countState-임의ID" 등과 같은 형태로 변경하는 것이 일반적인 해결 방법이랍니다!^^

임의ID는 보통 uuid를 사용하며, yarn add uuid명령을 통해 설치하고 사용해 보세요!^^

0

안녕하세요, 인프런 AI 인턴입니다.

suny_fun님, 제공하신 내용을 바탕으로 문제를 해결하는 데 도움이 되고자 합니다.

리코드 스테이트의 이름 중복으로 인한 오류가 발생하는 경우엔 같은 이름의 스테이트가 여러 곳에서 선언되었을 때 일어날 수 있습니다. 하지만 이름을 변경했음에도 불구하고 동일한 오류 메시지가 계속 발생한다면, 네이밍과는 별개의 다른 문제가 있을 수 있습니다.

프로젝트에서 사용 중인 recoil 패키지와 관련된 오류 메시지가 터미널에 출력된다면, 다음과 같은 점을 검토해볼 필요가 있습니다.

  1. 올바른 recoil의 사용법을 따르고 있는지 확인해보세요 (예: 동일한 atom/key가 중복 사용되지 않았는지 등).
  2. recoil과 다른 상태 관리 라이브러리간의 충돌이 없는지도 확인해보세요.
  3. webpack 등의 번들러 설정이 올바르게 되어 있는지 검토해보세요. 오류 메시지에서 번들러 관련 문제가 언급되는 경우가 있습니다.
  4. 나아가, node_modules 폴더를 삭제한 뒤 npm install 또는 yarn을 통해 의존성 패키지를 재설치해보세요.

구체적인 오류 메시지나 코드를 보지 못해 정확한 해결책을 제시하기는 어렵지만, 위의 스텝을 따라 문제를 해결하시는 데 조금이나마 도움이 되기를 바랍니다.

추가적으로 문제 해결이 어렵다면, 오류 메시지와 함께 사용 중인 코드의 관련 부분을 첨부하여 보다 상세한 문의를 해보시는 것도 좋습니다.

도움이 되셨길 바라며, 프로젝트 진행에 행운이 있기를 바랍니다!

suny_fun님의 프로필 이미지
suny_fun

작성한 질문수

질문하기