본문 바로가기
JS/React 강의

[React] 2. 컴포넌트(Component)

by GiraffePark 2023. 2. 6.

안녕하세요. 박기린 입니다.

이번엔 리액트의 핵심인 컴포넌트(Component)를 만들어봅시다.

 

 

 

 


컴포넌트 만들기

// App.js
import ExpenseItem from './components/ExpenseItem';

function App() {
  return (
  // JSX
    <div>
      <h2>Let's get started!</h2> // 소문자
      <ExpenseItem></ExpenseItem> // 대문자 
    </div>
  );
}

export default App;

리액트의 컴포넌트는 '함수형 컴포넌트'라고 부릅니다. 즉, JavaScript의 함수를 사용하기 때문에 function 키워드나 화살표 함수를 사용해서 컴포넌트를 생성할 수 있습니다.

class형 컴포넌트도 있으나, 최신 React 버전에는 대부분 함수형 컴포넌트를 사용하기에 설명을 생략하겠습니다.

 

 

 

 

 


JSX

  return (
    <div>
      <h2>Let's get started!</h2>
      <ExpenseItem></ExpenseItem>
    </div>
  );

함수형 컴포넌트의 return() 안에 들어가는 코드는 JSX코드라고 부릅니다.

JSX는 JavaScript Xml의 준말입니다. React팀에서 개발한 구문으로, JS파일에서 <html 문구 - 태그>를 사용할 수 있게 해줍니다. React-JS 엔진 백그라운드에서 JSX코드를 DOM으로 자동 변환합니다.

 

 

 

 

 


컴포넌트 작명 방식

// ExpenseItem.js
function ExpenseItem() {
  return <h2>Expense item!</h2>
}

export default ExpenseItem;
// App.js의 jsx 코드 발췌

	<h2>Let's get started!</h2> // 소문자 : HTML의 기본 h2 태그
	<ExpenseItem></ExpenseItem> // 대문자 : 직접 생성한 컴포넌트

컴포넌트와 컴포넌트가 담긴 JS파일의 이름은 모두 UpperCamelCase로 짓습니다. JSX 구문에서 HTML 태그와 구분을 짓기 위해서 입니다. 소문자로 시작하면 HTML, 대문자로 시작하면 컴포넌트입니다.

 

반응형