(1) React Component란?
<함수형 컴포넌트>
// props라는 입력을 받음
// 화면에 어떻게 표현되는지를 기술하는 React 엘리먼츠를 반환(return)
function Welcome(props) {
return <h1>Hello, {props.name}</h1>;
}
// 쉽게.
function App () {
return <div>hello</div>
}
React 세계에서 말하는 컴포넌트(블럭)는 함수다!!
(2) 만든 CRA프로젝트 살펴보기
import logo from './logo.svg';
import './App.css';
function App() {
return (
<div className="App">
<header className="App-header">
<img src={logo} className="App-logo" alt="logo" />
<p>
Edit <code>src/App.js</code> and save to reload.
</p>
<a
className="App-link"
href="https://reactjs.org"
target="_blank"
rel="noopener noreferrer"
>
Learn React
</a>
</header>
</div>
);
}
export default App;
컴포넌트 안에는 자바스크립트를 쓸 수 있는 부분이 있음.
return을 기준으로 아랫부분에서는 JSX를 작성할 수 있음.(여기세 작성한 것이 화면에 보여짐.)

컴포넌트를 만들 때 반드시 가장 첫 글자는 대문자!
폴더는 소문자로 시작하는 카멜케이스로 작성하고, 컴포넌트를 만드는 파일은 대문자로 시작하는 카멜케이스로!
(3) 부모-자식 컴포넌트
// src/App.js
import React from "react";
function Child() {
return <div>나는 자식입니다.</div>;
}
function App() {
return <Child />;
}
export default App;
(1). JSX란?
// import [패키지명] from [경로] 이 형식으로 불러옴.
import React from 'react';
// js 파일 뿐 아니라 이미지도 가능가능!
import logo from './logo.svg';
// css? 가능!
import './App.css';
function App() {
return (
<div className="App">
<header className="App-header">
<img src={logo} className="App-logo" alt="logo" />
<p>
Edit <code>src/App.js</code> and save to reload.
</p>
<a
className="App-link"
href="https://reactjs.org"
target="_blank"
rel="noopener noreferrer"
>
Learn React
</a>
</header>
</div>
);
}
export default App;
React에서는 딱 하나의 html 파일만 존재함.
JSX 문법을 사용해서 React 요소를 만들고 DOM에 렌더링 시켜서 뷰를 그림.
(2). JSX 실습해보기