Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- 큐넷 폐업 사대보험 미가입
- 4대보험미가입 경력증명서
- 큐넷 필기시험장소 변경
- 벤큐 EX2510
- 큐넷 4대보험
- 광명김치찌개
- HTML CSS Support
- 정보처리기사 시험장도 변경
- BENQ EX2510S REVIEW
- 시험장소변경
- vue.js 로그인
- 큐넷 4대보험미가입
- 벤큐 EX2510S
- eslint prettier차이
- 큐넷 시험장소 변경
- 서울근교두루치기
- 벤큐 EX2510S 후기
- vue eslint설정
- 큐넷 사대보험
- 큐넷 시험 변경
- vue 로그인
- EX2510S음질
- vue prettier
- 광명돼지집
- 큐넷 폐업
- 경기도광명맛집추천
- vue 설정
- vuetify 설치
- 경기도광명돼지집
- 큐넷 사실확인서
Archives
- Today
- Total
코딩 발걸음 - 한발두발개발
React - 함수형 Component 와 클래스형 Component의 차이 본문
728x90
import "./styles.css";
import React from "react";
import { useState } from "react";
export default function App() {
return (
<div className="App">
<Origin></Origin>
<Hook></Hook>
</div>
);
}
//숫자를 증가시키는 컴포넌트의 문법 차이
//Class형 Component
//클래스 사용의 어려움과 재사용, 조립이 어렵다. 코드가 길다.
//오류파악을 직관적으로 할 수 있음
class Origin extends React.Component {
constructor(props) {
super(props);
this.state = {
Count: 0
};
}
increase = () => {
this.setState({ Count: this.state.Count + 1 });
};
render() {
return (
<div>
<h2>Orgin</h2>
<h4>카운트</h4>
<h4>{this.state.Count}</h4>
<button onClick={this.increase}>카운트 증가</button>
</div>
);
}
}
//함수형 Component
//어려운 클래스 사용을 쉽게 완화하기 위해 나옴
//로직의 재사용의 용이, 복잡성x
//오류파악을 타고 타고 들어가야함
function Hook() {
let [Count, setCount] = useState(0);
const increase = () => {
setCount(Count + 1);
};
return (
<div>
<div className="spacing"></div>
<h2>Hook</h2>
<h4>카운트</h4>
<h4>{Count}</h4>
<button onClick={increase}>카운트 증가</button>
</div>
);
}
//https://ui.toast.com/weekly-pick/ko_20200922
Class형 Component의 특징
- 클래스 사용의 property의 혼동, 어려움과 재사용, 조립이 어렵다. 코드가 길다.
- 오류파악을 직관적으로 할 수 있음
함수형 Component의 특징
- 어려운 클래스형 Component의 사용을 쉽게 완화하기 위해 나옴
- 클래스형 Component를 함수형으로 바꾸는 추세
- 로직의 재사용의 용이, 복잡성x
- 오류파악을 타고 타고 들어가야함
'개발 > React.js' 카테고리의 다른 글
React Material-UI를 이용한 회원가입만들기 (0) | 2021.07.19 |
---|---|
React UI Library (0) | 2021.07.16 |
React Api를 이용하여 Database에서 Data 가져오기 (0) | 2021.07.15 |
Client 서버와 Express 서버 동시에 실행하기 (feat. Concurrently) (0) | 2021.07.14 |
리액트 와 CSide Rendering vs Server Side Rendering (CSR SSR 차이) 그리고 MPA 와 SPA (0) | 2021.07.14 |