리액트 엘리먼트와 컴포넌트의 차이

oversleep·2025년 1월 19일

비슷한 용어로 혼동되기 쉽지만 약간의 차이가 있음.

  1. 엘리먼트(Elements):
    • 엘리먼트는 React 애플리케이션에서 UI를 구성하는 가장 작은 단위임
    • React에서 엘리먼트는 가상 DOM에 해당하는 객체임.
    • HTML 태그와 유사한 형태로 표현되며, React.createElement() 함수를 사용하여 생성됨.
    • 엘리먼트는 사용자 정의 컴포넌트의 인스턴스가 될 수도 있음.
React 엘리먼트의 예:
const element = <h1>Hello, world!</h1>;
  1. 컴포넌트(Components):
    • 컴포넌트는 UI를 재사용 가능한 독립적인 부분으로 나누는 React의 핵심 개념
    • 컴포넌트는 UI의 구성요소로서 엘리먼트를 생성하고 반환하는 JavaScript 함수
    • 컴포넌트는 클래스 컴포넌트(Class Components)와 함수 컴포넌트(Function Components) 두 가지 형태가 있음.
    • 클래스 컴포넌트는 React.Component 클래스를 확장하고 render() 메서드를 구현하여 작성되며, 함수 컴포넌트는 함수를 정의하고 JSX를 반환하여 작성됨.
    • 컴포넌트는 props와 state를 통해 동적으로 변경되는 UI를 구현할 수 있음.
함수 컴포넌트의 예:
function Welcome(props) {
  return <h1>Hello, {props.name}</h1>;
}

컴포넌트는 여러 개의 엘리먼트로 이루어질 수 있고, 컴포넌트는 재사용 가능하며 각각의 독립적인 기능이 있음.

엘리먼트는 UI의 구성요소이며, 컴포넌트의 인스턴스일 수도 있음.

따라서 엘리먼트와 컴포넌트는 React 애플리케이션에서 UI를 구성하는 데 중요한 역할임.

요약:

엘리먼트는 React 애플리케이션에서 UI를 구성하는 가장 작은 단위이고, 가상 DOM에 해당하는 객체임.

HTML 태그와 유사한 형태로 표현되며, React.createElement() 함수를 사용하여 생성됨.

컴포넌트는 UI를 재사용 가능한 독립적인 부분으로 나누는 React의 핵심 개념.

컴포넌트는 엘리먼트를 생성하고 반환하는 JS함수

컴포넌트는 여러 개의 엘리먼트로 이루어질 수 있고, 컴포넌트는 재사용 가능하며 각각의 독립적인 기능이 있음.

profile
궁금한 것, 했던 것, 시행착오 그리고 기억하고 싶은 것들을 기록합니다.

0개의 댓글