본문 바로가기
L'etude

React : useMemo()

by hxunz 2022. 6. 27.

useMemo를 사용하게되면 변경된 부분에 대해서만 새로 업데이트를 해준다. 

 

그래서 프로젝트에 적용을 해보았다. 

 

구현하고자 하는 것

루틴을 완료하면 체크버튼을 눌러서 루틴이 완료했다는 것을 보여준다.

 

 

해결

const countCompletedRoutines = useMemo(() => {
    const countRoutines = routines.filter(routine => routine.completed === true);
    return countRoutines.length;
  }, [routines]);

이렇게 useMemo를 사용해서 새로운 함수를 만들어주었다. 

routine이 completed된 것들의 길이를 구하는 건데 루틴 completed가 false에서 true로 바뀌는 경우,

이 변경된 부분에 대해서만 새롭게 업데이트를 해주기 위함이다.

 

이 함수를 리턴하는 곳에서 

{`✔︎  You completed ${countCompletedRoutines} routines`}

이렇게 사용해주었다.

useMemo를 사용한 경우 함수를 넘기는 것이 아닌 변수를 넘기기 때문에 countCompletedRoutines()가 아닌countCompletedRoutines로 했다.

'L'etude' 카테고리의 다른 글

npm ci를 하는 이유  (0) 2022.11.13
git에서 폴더명 대소문자 인식을 못할 때  (0) 2022.11.13
localStorage  (0) 2022.06.20
Javascript : 프로토타입  (0) 2022.06.07
react useRef 사용해보기  (0) 2022.06.07

댓글