반응형
컴포넌트를 사용하는 방식은 두가지이다. 하나는 함수형 컴포넌트이고, 또 다른 하나는 클래스형 컴포넌트이다. 플젝에서는 함수형 컴포넌트만 사용했지만, 클래스형 컴포넌트도 알아두어야 할 것 같아서 "리액트를 다루는 기술"을 다시 보며 한번 정리해보고자 한다.
클래스형 컴포넌트의 선언 방식
class App extends Component {
constructor(props){
super(props);
this.state = {
//state로 지정해 줄 데이터
foodList: ["피자", "치킨", "복숭아", "아이스크림"]
}
}
render() {
console.log(this.state);
//foodList: ["피자", "치킨", "복숭아", "아이스크림"]
<div className="App">
<h1>내가 제일 좋아하는 음식</h1>
<컴포넌트명 list={this.state.foodList}/>
//원하는 컴포넌트에 props로 foodList라는 state를 보낼 수 있음
</div>
}
}
export default App;
클래스형 컴포넌트의 특징
- class 키워드 필요
- Component로 상속을 받는다(extends ~)
- render() 메소드 필수
- 컴포넌트 내부에서 state 사용이 가능하다 . state는 객체 형식이며 update시에는 this.setState 사용
- constructor() 존재 -> 컴포넌트의 생성자
- Lifecycle method 존재
728x90
반응형
'개발일지 > TIL' 카테고리의 다른 글
[TIL] 210728 오늘 공부는 콜백큐의 종류(마이크로태스크큐, 태스크큐)와 우선순위 (0) | 2021.07.30 |
---|---|
[TIL] 210727 오늘 공부는 promise.all() (0) | 2021.07.29 |
[TIL] 210723 오늘 공부는 this와 화살표 함수 (0) | 2021.07.24 |
[TIL] 210722 오늘 공부는 함수형 프로그래밍 (0) | 2021.07.22 |
[TIL] 210721 오늘 공부는 실행 컨텍스트 + 호이스팅 + 콜스택 (0) | 2021.07.22 |