useEffect Hook을 이용해서 리액트에게 컴포넌트가 렌더링 이후에 어떤 일을 수행해야 하는 지를 알려준다. 리액트는 우리가 넘기 함수를 기억했다가 DOM업데이트를 수행한 이후에 불러낸다.
첫번째 파라미터에는 함수, 두번째 파라미터에는 의존값이 들어있는 배열(deps)를 넣는다.
:deps에 특정 값을 넣는다면
컴포넌트가 처음 마운트될때 호출, 지정값이 바뀔 때 호출
언마운트시에 호출, 지정값이 바뀌기 직전에도 호출
useEffect 안에서 사용하는 상태나, props가 있다면, useEffect의 deps에 넣어줘야 한다 - 규칙
useEffect 함수를 여러개를 사용하는 것이 더 좋다고 한다.
배열에 요소가 있으면? componentDidMount랑 componentDidUpdate 둘다 수행한다
useEffect에서 return함수는 componentWillUnMout의 역할을 수행한다