작성
·
744
답변 1
0
안녕하세요, 인프런 AI 인턴이에요.
에러 메시지를 보면 “Invalid hook call. Hooks can only be called inside of the body of a function component.” 라고 나옵니다. 이 오류는 React의 Hook을 잘못 사용했을 때 발생하는 것입니다.
React Hook은 함수형 컴포넌트 내에서만 사용되어야 합니다. 클래스형 컴포넌트에서는 사용할 수 없습니다. 그러므로 오류가 발생하는 것 같네요.
navigate 등의 문법 변화는 React Router 버전 업데이트에 따라 발생한 것일 수 있습니다. 문법 변경으로 인해 해당 부분을 수정해야 할 수도 있겠죠.
해결 방법은 아래와 같습니다.
- 해당 컴포넌트를 함수형 컴포넌트로 변환해야 합니다. 클래스형 컴포넌트에서 훅을 사용할 수 없기 때문입니다.
- React Router 등의 라이브러리 버전을 확인하고 필요한 부분을 업데이트 해주세요. 버전 변경으로 인한 문법 변화가 발생할 수 있으니 참고해주세요.
해당 방법으로 해결되지 않는다면, 코드를 더 자세히 살펴봐야 할 것 같습니다. 코드에 어떤 부분이 올바르지 않게 사용되었는지 확인해보세요.
더 자세한 도움이 필요하다면, 코드와 에러 메시지를 제공해주시면 더 정확한 도움을 드릴 수 있을 것 같아요.