루

  • 홈
  • 태그
  • 방명록

효율성 1

React memo를 반드시 사용해야 하는 이유

React memo는 부모요소가 다시 렌더링될때 요소의 입력 prop이 같은 경우, 함수가 다시 실행되는 것을 방지한다. 얼핏 보면 컴포넌트의 입력 prop이 같은데 출력이 다른 경우가 있을 것 같지만, 그런 경우가 있다면 그건 잘못된 설계다. React hook에서 렌더 부분은 state와 prop에 대해 순수해야만 한다. 그런데 state도 그대로, prop도 그대로인 상태에서 재렌더링을 했다고 해서 리턴값이 바뀌면, 그것은 hook이 순수함수여야 한다는 원칙을 어긴 것이다. 사용하지 않아야 할 수도 있는 단 한 가지 예외상황은, props에 대해 객체를 넘겨줄 때 뿐이다. (부모 요소에서 객체를 넘겨줄 경우, 객체가 변화할 시에 객체의 키-값만 바뀌고 객체 자체는 바뀌지 않는 경우가 있기 때문이다...

PRGRM/JS 2021.08.18
1
더보기
프로필사진

  • 분류 전체보기 (13)
    • 블로그 (1)
    • PRGRM (8)
      • JS (4)
      • Clojure (1)
      • Haskell (2)
      • ML (1)
      • Web (0)
    • SemiP2P (홈서버 구축) (4)

Tag

create-react-app, 연산자오버로딩, 효율성, monad, JS, Clojure, 라즈베리파이, hooks, Applicative, Functor, nodejs, 유머?, react, Docker, ML, haskell, 새블로그, WebDAV, cnn, 홈서버,

최근글과 인기글

  • 최근글
  • 인기글

최근댓글

공지사항

페이스북 트위터 플러그인

  • Facebook
  • Twitter

Archives

Calendar

«   2025/05   »
일 월 화 수 목 금 토
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

방문자수Total

  • Today :
  • Yesterday :

Copyright © Kakao Corp. All rights reserved.

티스토리툴바