728x90
리액트에서 사용되는 컴포넌트들의 생성 주기에 대해서 알아보겠습니다.
위의 그림에 기본적인 컴포넌트의 생성, 완료, 갱신, 소멸에 거치는 과정들을 그림으로 표현해놓았습니다.
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
32
33
34
35
|
import { Component } from 'react';
class LifeCycleExample extends Component {
static getDerivedStateFromProps() {
console.log('getDerivedStateFromProps 호출');
return {};
}
constructor(props) {
super(props);
this.state = {};
console.log('constructor 호출');
}
componentDidMount() {
console.log('componentDidMount 호출');
}
componentDidUpdate() {
console.log('componentDidUpdate 호출');
}
componentWillUnmount() {
console.log('componentWillUnMount 호출');
}
getSnapshotBeforeUpdate() {
console.log('getSnapshotBeforeUpdate 호출');
}
shouldComponentUpdate() {
console.log('shouldComponentUpdate 호출');
}
render() {
console.log('render 호출');
return null;
}
}
export default LifeCycleExample;
|
위의 그림에서 볼 수 있는 컴포넌트 주기를 눈으로 보기 위해 각 컴포넌트들을 만들어서 콘솔창에 띄워주었습니다.
State 갱신 버튼을 누르면 처음부터 다시 시작하는 것이 아니라 getDerivedStateFromProps부터 시작되는 것을 볼 수 있습니다.
728x90
'Java, JavaScript > React, React Native' 카테고리의 다른 글
[React] fetch를 사용한 데이터 가져오기 (0) | 2020.06.24 |
---|---|
[React] state 사용 시 주의할 점 (0) | 2020.06.18 |
[React] 프로퍼티가 뭐야? (0) | 2020.06.17 |
[React] 템플릿 문자열 (0) | 2020.06.16 |
[React] 리액트 기본 설정 (0) | 2020.06.14 |