오늘은 useEffect에 대한 공부를 해보려고 합니다.
useState는 계속 사용하게 되니 친해지는 감도 있고 구조와 원리도 익숙해지고 있습니다.
하지만 useEffect는 life-cycle과 연관되어 있다보니 자주 다루지 않기도 하기 때문에 아직 어렵습니다.
useEffect(() => {}, [count])
처럼 사용한다.**첫번쨰** useEffect(() => { console.log(CDM + CDU) }) // 의존성 배열이 없음으로 매 render 마다 useEffect안에 있는 함수가 실행된다 **두번째** useEffect(() => { console.log(CDM) return () => console.log(CWU) }, []) // 두번째 인자인 의존성 배열이 비어있음으로 CDM때 한번 실행되고 이후로는 실행되지 않음 // 하지만 위처럼 return 하여 콜백함수로 실행하면 CWU일때, 실행된다 **세번째** useEffect(() => { console.log(CDM) console.log(CDU) + shouldComponentUpdate return () => console.log(clean-up) }, [state]) // 의존성배열에 state가 들어오면 CDM때 실행되고 // 컴포넌트가 업데이트될 때도 실행된다. 추가적으로 state에 변경이 감지될 때도 실행된다. // callback함수를 만들면 closure에 의해 과거의 값을 기억하는 함수가 실행된다. **데이터 fetch 할 때** useEffect(() => { fetch(url) }, [state]) // 의존성 배열에 state가 있으면 fetch해온 data가 state가 변경될 때마다 실행된다 // 그렇다면 받아오는 데이터 값이 변경되어야 할 때, 사용하면 좋다. (filter, search)
전 진수님과 더 친해지고 싶은걸요..ㅎ