woong-jae / blog-legacy

Personal Blog powered by Gatsby
https://woong-jae.com
1 stars 0 forks source link

react/210826-useMemo-useCallback #30

Open utterances-bot opened 1 year ago

utterances-bot commented 1 year ago

[React] useMemo, useCallback | 햣 블로그

woong-jae의 기술 블로그

https://woong-jae.com/react/210826-useMemo-useCallback

njh0317 commented 1 year ago
const [color, setColor] = useState("");
const [drink, setDrink] = useState("");

이게 컴포넌트에 안에 선언되있다는게 컴포넌트가 두 개의 state 를 가지고 있는거고, '3. 컴포넌트는 자신의 state가 변경되면 리렌더링 된다' 에 의해 color(state 중 하나가 바뀐 것..?)의 값만 바뀌어도 리렌더링 돼서 로그의 결과로 getColorKor와 getDrinkKor 둘 다 찍히는 것인가요~?

woong-jae commented 1 year ago

@njh0317 두 state 중 하나만 바뀌어도 컴포넌트는 리렌더링하게 됩니다. 컴포넌트가 리렌더링하면 함수와 변수들이 모두 재선언되기 때문에, colorKordrinkKor를 다시 계산하게 되면서 getColorKorgetDrinkKor가 호출되게 되는 거에요!

njh0317 commented 1 year ago

@woong-jae 하나만 바뀌어도 리렌더링되다니,,참,, 신기하고 복잡한 아이네요..