Frontend/React

[React] React Hook "useEffect" is called in function 에러 해결

2025. 3. 3. 12:09·Frontend/React

문제 발생 원인

youtube에 있는 react강의를 따라하다가 에러가 발생했다. 

더보기

상세한 에러 문구

React Hook "useEffect" is called in function "index" that is neither a React function component nor a custom React Hook function. React component names must start with an uppercase letter. React Hook names must start with the word "use". (react-hooks/ rules-of-hooks)

알고보니, `React` 의 컴포넌트는 대문자로 시작해야 `useEffect`, `useState` 같은 hook을 사용할 때 오류가 나지 않는다는 것.

React는 대소문자를 구분하는 특성이 있다고 한다. 

이렇게 `index`라는 컴포넌트 함수에다가 `useState`, `useEffect`를 넣어서 사용하니 에러가 났다.

 

문제 해결 방법

💡 컴포넌트 이름을 대문자로 바꿔주자!

`index` -> `Index`로 변경했더니, 에러 밑줄이 깔끔하게 지워졌음

 

❓ 대문자로 바꿔야 하는 이유는?

React가 JSX에서 태그를 사용할 때, `기본  HTML 요소`와 `사용자 정의 컴포넌트`를 구분하는 방식이 다르기 때문

  • 소문자로 시작하면 : 기본 HTML 요소(`div`, `span`, `p` 같이) 로 인식
  • 대문자로 시작하면 : 사용자 정의 컴포넌트로 인식해서, 함수/클래스 등으로 정의된 컴포넌트를 렌더링 함

그래서, React 공식 문서에도 컴포넌트를 명명할 때, 대문자로 시작할 것을 권장한다!

 

 

저작자표시 비영리 변경금지 (새창열림)

'Frontend > React' 카테고리의 다른 글

[React] .env 환경변수 사용법 (Vite / CRA 환경)  (0) 2025.02.27
[React] Props, Event, State  (0) 2024.12.19
[React] 컴포넌트에 대한 고찰  (1) 2024.12.18
[React] 프로젝트 구동 방식  (0) 2024.12.17
[Vite] React + TypeScript 기반 프로젝트 생성하기  (1) 2024.12.15
'Frontend/React' 카테고리의 다른 글
  • [React] .env 환경변수 사용법 (Vite / CRA 환경)
  • [React] Props, Event, State
  • [React] 컴포넌트에 대한 고찰
  • [React] 프로젝트 구동 방식
sol_git
sol_git
Full-Stack을 꿈꾸는 Junior Developer💖
  • sol_git
    솔깃한 Dev
    sol_git
  • 글쓰기 관리자
  • 전체
    오늘
    어제
    • 분류 전체보기 (40)
      • Frontend (13)
        • Javascript (1)
        • React (9)
        • Vue (1)
        • Svelte (1)
      • Style Sheet (0)
        • Sass (0)
      • Backend (4)
        • Java (3)
        • Python (1)
        • Spring Boot (0)
      • AI (0)
        • LLM (0)
        • Gen AI (0)
      • DevOps (16)
        • Git (16)
        • Kubernetes (0)
      • Cloud (0)
        • AWS (0)
      • DBMS (2)
        • MySQL (1)
        • PostgreSQL (1)
      • IDE & Tools (3)
        • IntelliJ (1)
        • VS Code (1)
        • Tool (1)
      • OS (2)
        • Mac (2)
      • Project 일기 (0)
  • 블로그 메뉴

    • 방명록
  • 링크

    • Github
  • 인기 글

  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.3
sol_git
[React] React Hook "useEffect" is called in function 에러 해결
상단으로

티스토리툴바