개발하는 사막여우
개발하는 사막여우
개발하는 사막여우
전체 방문자
오늘
어제
  • All (310)
    • Books (13)
      • 읽기 좋은 코드가 좋은 코드다 (13)
    • Study (6)
      • Blockchain (3)
      • Algorithm (3)
    • Baekjoon (36)
    • Programmers (166)
    • LeetCode (15)
    • Open Source (1)
      • Youtube Popout Player (1)
    • Language (32)
      • Python (9)
      • JS (8)
      • Java (5)
      • HTML (6)
      • CSS (4)
    • Library & Framework (15)
      • React.js (15)
    • IDE (2)
      • IntelliJ (2)
    • Airdrop (9)
    • Tistory (2)
    • etc.. (12)
      • Cozubi (6)
      • lol-chess (0)

블로그 메뉴

  • Github

공지사항

인기 글

태그

  • programmers
  • 백준
  • 클린 코드 작성법
  • 파이썬
  • 코인줍줍
  • 신규 코인 에어드랍
  • Cozubi
  • Python
  • 2018 KAKAO BLIND RECRUITMENT
  • 카카오 알고리즘 문제
  • 읽기 좋은 코드가 좋은 코드다
  • 카카오 공채
  • 프로그래머스
  • 카카오 코딩테스트
  • 프로그래머스 위클리 챌린지
  • 알고리즘문제풀이
  • 코주비
  • 클린 코드
  • 코딩테스트연습
  • Java

최근 댓글

최근 글

티스토리

반응형
hELLO · Designed By 정상우.
개발하는 사막여우

개발하는 사막여우

[React.js] 컴포넌트 생명주기
Library & Framework/React.js

[React.js] 컴포넌트 생명주기

2021. 2. 25. 10:41
반응형

:::참고::: ko.reactjs.org/docs/react-component.html#constructor

 

리액트는 수많은 컴포넌트로 구성되어있고, 각 컴포넌트는 생명주기(life cycle)이라는 개념을 갖는다.

생명주기란 쉽게 말해서, 컴포넌트가 프로그램에서 어떻게 생성되고, 업데이트 되고, 삭제 되는지의 3단계를 의미하는 것이다.

생명주기 도표

 

이 생명주기 3단계를 용어로서 표현하자면 다음과 같다.

1. 마운트(Mount): 컴포넌트의 생성

2. 업데이트(Update): 컴포넌트 업데이트

3. 언마운트(Unmount): 컴포넌트의 제거


1. 마운트(Mount)

마운트는 컴포넌트의 새로운 인스턴스가 생성되어 DOM 상에 삽입될 때에 실행되는 과정이다. 

일련의 함수들이 순차적으로 실행되며, 종류는 다음과 같다.

1. constructor(): 생성자. 컴포넌트의 생성과 함께 가장 먼저 실행된다. 메서드를 바인딩하거나 state를 초기화할때 사용한다. 딱히 그럴 필요가 없다면 구현하지 않아도 된다.

2. static getDerivedStateFromProps(): 쓸 일이 거의 없다고 한다. 패스

3. render(): 위 과정(주로 constructor만)을 통해 설정된 초기값을 이용해 렌더링을 진행한다.

4. componentDidMount(): 렌더링이 완료되어 마운트가 끝나는 것을 알려주는 함수이다.

 

2. 업데이트(Update)

말 그대로 업데이트이다. props또는 state가 변경됨에 따라 컴포넌트가 가지는 값 또는 모든 것들이 갱신되면서 발생하는 과정이다. 

1. static getDerivedStateFromProps(): 패스

2. shouldComponentUpdate(): 패스

3. render(): setState등을 이용해 변경된 state값 등을 다시 렌더링하는 과정이다. 변경사항을 저장하여 앱에 표현해주는 거라고 보면 될 것 같다.

4. getSnapshotBeforeUpdate(): 패스

5. componentDidUpdate(): 재 렌더링이 완료 되면서 업데이트가 종료됨을 알려주는 함수이다.

 

3.언마운트(Unmount)

해당 컴포넌트가 DOM 상에서 제거될 때에 호출된다. 페이지 또는 컴포넌트가 교체될 때가 그런 경우에 해당된다. 오직 하나의 함수만을 갖는다.

1. componentWillUnmount(): 컴포넌트가 이제 언마운트 될 것임을 알려준다.

 

 

반응형
저작자표시 (새창열림)

'Library & Framework > React.js' 카테고리의 다른 글

[React.js] github 웹 호스팅 / github.io  (0) 2021.02.26
[React.js] async / await 비동기 사용법  (0) 2021.02.25
[React.js] setState() / state 값 갱신  (0) 2021.02.24
[React.js] React application 새로 만들기 / react app 새로 만들기  (0) 2021.02.24
[React.js] Warning: Each child in a list should have a unique "key" prop. 경고 문구 없애기  (0) 2021.02.24
    'Library & Framework/React.js' 카테고리의 다른 글
    • [React.js] github 웹 호스팅 / github.io
    • [React.js] async / await 비동기 사용법
    • [React.js] setState() / state 값 갱신
    • [React.js] React application 새로 만들기 / react app 새로 만들기
    개발하는 사막여우
    개발하는 사막여우
    개발개발 주저리주저리

    티스토리툴바