본문 바로가기
개발적인

useEffect는 왜 사용할까?

by klm hyeon woo 2022. 12. 5.

Hook의 개요

 

원래는 State를 클래스 컴포넌트로만 관리할 수 있었다.

 

UseEffect는 왜 사용이 되는가?

 

Class Componant 같은 경우, 관련 없는 로직들은 모아놓고, 관련이 있는 로직들은 여러 개의 메서드로 나누어 놓은 경우가 있었다.

(componantDigMount, componentDidUpdate, componentWillUnMount와 같이,,)

 

이에 대한 해결책으로 UseEffect 표현으로 하나로 합치고, 버그를 방지할 수 있었다.

그리고, 클래스 컴포넌트에서는 이전 값과 현재 값을 매번 받아가며 비교를 하였는데 useEffect 같은 경우 dependency array를 통해 prop의 변화가 일어날 때만 실행을 할 수 있게 할 수 있다.

 

  • 데이터를 fetch 하거나, 구독하거나, DOM을 수정하거나 할 때 사용된다.
  • Clean up (return)을 통해 구독과 구독 해지를 한 공간에서 수행할 수 있다.
  • dependency array를 통해 필요한 변경 시에만 effect를 실행할 수 있다.

 

 

 

댓글