TIL 2 [11/29] - React 컴포넌트

2872 단어 ReactReact

component 개념

component란?

재활용 가능한 UI 구성 단위. component를 이용한 모듈화를 통해 깔끔한 코드 정리가 가능해지면서, 가독성이 올라가고 유지보수가 쉬워지게 된다. 그리고 component type에는 Class와 Function 이렇게 2개가 있다

class type

class 키워드로 정의하며, render()함수에서 JSX 요소를 return한다

class nameDiv extends Component {
  render() {
    const name = 'my name';
    return <div className="myName">{name}</div>
  }
}

function type

function 또는 arrow로 정의하며, render() 없이 바로 JSX 요소를 return한다

const MyComponent = () => { 
    const name = 'my name';
    return <div className="myName">{name}</div>;
};

component 비교

비교

class type

• state, lifeCycle 관련 기능 사용 가능
• function 컴포넌트보다 메모리 자원을 더 사용
• 임의 메서드를 정의할 수 있다

function type

• state, lifeCycle 대신에 Hook을 사용
• class형 컴포넌트보다 메모리 자원을 덜 사용
• 컴포넌트 선언이 편하다

결론

function type이 class type 이후에 나왔기도 하고 더 편리한 건 사실이다. 하지만 과거 클래스 컴포넌트를 사용한 프로젝트들이 다수 존재해서 유지보수를 위해 알아둘 필요가 있다

Hook

  • Hook은 function type의 component가 가지는 강력한 기능으로 Hook에는 useState(), useEffect() 등이 있다
  • useState() : 화면에 보여줄 컴포넌트의 상태값과 이 값을 갱신할 수 있는 함수를 하나의 쌍으로 반환하는 함수이며 컴포넌트 내부 최상단에서 정의하고 계속 수정이 가능한 요소
  • useEffect() : 렌더링 시 또는 변수의 값이나 객체가 달라지게 되면, 그것을 인지하고 업데이트하는 함수

좋은 웹페이지 즐겨찾기