1. React 기초
React란 무엇인가?
React는 Facebook에서 개발한 UI 라이브러리로, 컴포넌트 기반의 사용자 인터페이스를 구축하는 데 사용됩니다. React는 효율적인 상태 관리를 통해 동적이고 반응성 있는 웹 애플리케이션을 쉽게 만들 수 있도록 도와줍니다.
React 설치 및 프로젝트 설정
React 프로젝트를 설정하기 위해, Node.js와 npm이 필요합니다. 프로젝트를 생성하고 설정하는 방법은 다음과 같습니다.
- Node.js와 npm이 설치되어 있는지 확인합니다.
node -v
npm -v
- Create React App을 사용하여 새로운 React 프로젝트를 생성합니다.
npx create-react-app my-react-app
cd my-react-app
- 프로젝트 폴더 구조는 다음과 같습니다.
my-react-app/
├── node_modules/
├── public/
├── src/
│ ├── App.css
│ ├── App.js
│ ├── App.test.js
│ ├── index.css
│ ├── index.js
│ ├── logo.svg
│ └── reportWebVitals.js
├── .gitignore
├── package.json
├── README.md
└── yarn.lock
- 프로젝트를 실행합니다.
npm start
브라우저에서 http://localhost:3000
을 열면 React 애플리케이션이 실행됩니다.
React의 주요 개념
1. 컴포넌트
컴포넌트는 React의 기본 단위입니다. 컴포넌트는 재사용 가능한 UI 요소로, 클래스 컴포넌트와 함수 컴포넌트로 나뉩니다.
함수 컴포넌트 예제
// src/App.js
import React from 'react';
function App() {
return (
<div>
<h1>Hello, React!</h1>
</div>
);
}
export default App;
2. JSX
JSX(JavaScript XML)는 JavaScript와 HTML을 결합한 문법으로, React에서 UI를 정의하는 데 사용됩니다.
const element = <h1>Hello, world!</h1>;
3. 상태 (State)
상태는 컴포넌트의 동적 데이터를 관리합니다. 함수 컴포넌트에서는 useState
훅을 사용하여 상태를 관리합니다.
import React, { useState } from 'react';
function Counter() {
const [count, setCount] = useState(0);
return (
<div>
<p>You clicked {count} times</p>
<button onClick={() => setCount(count + 1)}>
Click me
</button>
</div>
);
}
export default Counter;
4. 속성 (Props)
속성은 부모 컴포넌트에서 자식 컴포넌트로 데이터를 전달하는 데 사용됩니다.
function Greeting(props) {
return <h1>Hello, {props.name}!</h1>;
}
function App() {
return (
<div>
<Greeting name="Alice" />
<Greeting name="Bob" />
</div>
);
}
export default App;
React 개발 도구
1. React Developer Tools
React Developer Tools는 브라우저 확장 프로그램으로, React 컴포넌트 트리와 상태를 쉽게 확인하고 디버깅할 수 있습니다.
2. 코드 스플리팅
코드 스플리팅은 애플리케이션을 여러 청크로 나누어 초기 로딩 시간을 줄이고, 필요한 시점에 필요한 코드만 로드할 수 있게 합니다.
import React, { Suspense, lazy } from 'react';
const OtherComponent = lazy(() => import('./OtherComponent'));
function App() {
return (
<div>
<Suspense fallback={<div>Loading...</div>}>
<OtherComponent />
</Suspense>
</div>
);
}
export default App;
결론
React는 컴포넌트 기반의 사용자 인터페이스를 구축하는 데 매우 강력한 도구입니다. 이번 글을 통해 React의 기본 개념과 설치, 프로젝트 설정 방법을 배웠습니다.
다음 글에서는 Vue.js 기초에 대해 알아보겠습니다. 다음 글에서 만나요!
'JavaScript 프레임워크 시리즈' 카테고리의 다른 글
[JavaScript 프레임워크] 6일차: JavaScript 프레임워크에서 라우팅 설정하기 (0) | 2024.08.06 |
---|---|
[JavaScript 프레임워크] 5일차: JavaScript 상태 관리 이해하기: Redux와 Vuex (0) | 2024.08.05 |
[JavaScript 프레임워크] 4일차: JavaScript 프레임워크 프로젝트 설정 및 기본 구조 (0) | 2024.08.04 |
[JavaScript 프레임워크] 3일차: Angular 기초 이해하기 (0) | 2024.08.03 |
[JavaScript 프레임워크] 2일차: Vue.js 기초 이해하기 (0) | 2024.08.02 |