일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- position
- jQuery
- JavaScript
- HTML
- Illustrator2022
- 공공데이터 활용
- 20231221
- 자바스크립트
- useState
- 바닐라자바스크립트
- css 속성
- 리액트
- CSS
- react
- open api
- FOR문
- css속성
- 메뉴바만들기
- 공공데이터
- 개발일지
- 미세먼지알림사이트만들기
- 아코디언카드만들기
- 자바스크립트 내장객체
- Js 내장객체
- module.css
- 퍼블리싱
- 제이쿼리
- JS
- 미세먼지
- 일러스트 입체글자
- Today
- Total
김코드의 웹디자인 세상
❏ react - 함수형 컴포넌트 만들기! 본문

안녕하세요!
오늘은 함수형 컴포넌트에 대해서 알아보고 함수형 컴포넌트 생성에 대해서 알아보겠습니다.
함수형 컴포넌트란??
함수형 컴포넌트란 함수를 기반으로 작성하는 컴포넌트를 말합니다.
함수 컴포넌트는 클래스로 작성하는 것보다 빠르게 작성할 수 있으며 많은 컴포넌트를 함수 컴포넌트로 표현할 수 있습니다.
✏ 구조
function /*컴포넌트 이름*/() {
return (
<div>
/*jsx 입력*/
</div>
);
};
✏ 예시 코드
function Header(){
return <header>
<h1><a href='/'>React</a></h1>
</header>
}
컴포넌트를 선언할 때는 꼭 대문자를 시작으로 이름을 정해야하는 관례가 있습니다.
Header, Nav ➨ 생성가능,
article, nav ➨생성불가
또한 컴포넌트는 하나의 태그만 리턴(retrun)할 수 있습니다.
✏ 예제
아래와 같은 코드를 작성해야한다고 가정을 해보겠습니다.

일반적으로 코드를 작성하게 된다면...
import './App.css';
function App() {
return (
<div>
<header>
<h1><a href='/'>React</a></h1>
</header>
<nav>
<ol>
<li>html</li>
<li>css</li>
<li>js</li>
</ol>
</nav>
<article>
<h2>Welcome</h2>
Hello, WEB
</article>
</div>
);
}
export default App;
이렇게 작성을 해야합니다.
하지만 예시처럼 몇줄이 되지 않은 코드면 괜찮겠지만 만약 header의 h1태그가 수백 줄이라면 다 작성을 하게 된다면 시간이 엄청나게 소요되며 비효율적일 것입니다.
그렇기에 컴포넌트를 사용하여 코드를 간결하게 정리할 수 있으며 수정 시 매우 편리하게 수정을 할 수 있습니다.
그럼 함수형 컴포넌트를 사용해 볼까요??
import './App.css';
/*함수형 컴포넌트 선언*/
function Header(props){
return <header>
<h1><a href='/'>React</a></h1>
</header>
}
function Nav(){
return <nav>
<ol>
<li>html</li>
<li>css</li>
<li>js</li>
</ol>
</nav>
}
function Article(){
return <article>
<h2>Welcome</h2>
Hello, WEB
</article>
}
/*함수형 컴포넌트 적용 후*/
function App() {
return (
<div>
<Header></Header>
<Nav></Nav>
<Article></Article>
</div>
);
}
export default App;
간결하게 정리되어진 모습을 볼 수 있었으며, 서버에서도 동일하게 보이는 것도 확인해 볼 수 있었습니다.
이번 시간에는 함수형 컴포넌트에 대해서 알아보았는데요!
함수형 컴포넌트는 단독적인 사용보다는 Hook과 함께 사용된다고 합니다.
Hook의 더 자세한 설명은 아래를(공식) 참고해 주시고
기회가 된다면 다뤄보도록 하겠습니다.
https://ko.reactjs.org/docs/hooks-intro.html
Hook의 개요 – React
A JavaScript library for building user interfaces
ko.reactjs.org
오늘도 읽어주셔서 감사합니다!
♡ ٩(´▽`)۶ ♡
'⊹ ⠀𝚁𝚎𝚊𝚌𝚝' 카테고리의 다른 글
❏ react - React Hooks의 useReducer와 useState (0) | 2023.02.24 |
---|---|
❏ react - React Hooks: useState() 함수 (0) | 2023.02.22 |
❏ react - react-router-dom으로 중첩 라우팅(nested routes)사용하기. (0) | 2023.02.21 |
❏ react - 클래스형 컴포넌트 만들기! (0) | 2023.02.20 |
❏ react - react 시작하기! (Creat React App) (0) | 2023.01.27 |