위코드 16일차

임채현·2022년 1월 17일
0

화면에 처음 그려지는거 mount

side effect: 부수효과, main effect이외의 효과들

useEffect 쓰는 이유: 비효율적인 rendering 시간을 줄이기 위해서!
state가 바뀌면 화면이 처음부터 바뀌어서 모든 logic을 수행하기 때문에 시간이 오래걸려 사용자의 이탈률도 높아질 수 있다.
그리고 비효율적인 memory사용도 초래할 수 있음

useEffect: render가 다 실행된 후 실행됨
useEffect 빈배열(빈 의존성배열)[]이 있으면 처음에 mount할때만 호출되고 그 이후에 state가 바꿔어도 호출되지않음
배열조차 없으면 state가 변할때마다 useEffect가 호출됨

배열안에 state를 넣으면 그 state의 변화에 대해서만 호출할 수 있음

관심사의 분리: useEffect 여러개 만듬

cleanupeffect: 메모리 누수 방지(upmount: component 갈아끼울때(ex:Link)
return에 넣는 방식으로 사용, 배열안에 state를 넣어서 각 state에 대해 티이밍을 조절할 수 있음
upmount됬을때는 다 부름
state이 바뀌고 (예시)start end render 이후에 useEffect 속 return 안의 cleanupeffect가 먼저 실행되고 useEffect가 실행됨(비동기개념이라고함...잘은 모름)

profile
열심히 살고 싶은 임채현입니다.

0개의 댓글