[React] 컴포넌트 생성

앤쨩·2021년 11월 1일
1

React

목록 보기
4/11
post-thumbnail

🔔 컴포넌트(Component) 생성

첫번째로 class로 컴포넌트를 생성하는 방법이 있고 두번째 방법으로는 function을 이용하여 컴포넌트를 생성하는 것이다.

1)
import React, { Component } from 'react';
class App extends Component {
  render () {
    return (
      <h1>Hello, World!</h1>
    );
  }
}
export default App;
// import : 가져온다
// export : 내보낸다
2)
import React from 'react';
export default function App () {
  return (
    <h1>Hello, World!</h1>
  );
}
// export default App;

🧖🏻‍♀️class컴포넌트 function컴포넌트 차이?

class 컴포넌트는 state와 lifecycle method를 가질 수 있다. 하지만 function 컴포넌트는 state와 lifecycle method를 가질 수 없다. 다만, React Hook(react 16.8버전부터)을 통해서 state와 lifecycle method를 가질 수 있게 되었다.

💁🏻‍♀️그러면 class를 쓰면되지 왜 React Hook이 도입이 됬는가?
☝🏻첫번째
class는 어렵다.
객체지향언어인 c#, JAVA를 배운사람들은 쉽겠지만 스크립팅언어들만 쓰던 개발자들은 어려움을 겪었다.
✌🏻두번째
멤버변수에 접근할 때 항상 this라고 붙여야 함
=> 불편하다.
🤟🏻세번째
바인딩 이슈
=> 불편하다.
🖖🏻네번째
리액트 훅은 중복선언 되는 것을 줄일 수 있다.

기존의 많은 프로젝트들이 클래스 컴포넌트를 썼기 때문에 클래스 컴포넌트에 대해서도 알아두긴 해야한다.

profile
Front-End Developer

0개의 댓글