강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

emJ님의 프로필 이미지
emJ

작성한 질문수

한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지

10.3) React.memo와 컴포넌트 렌더링 최적화

areEqual 질문 입니다.

해결된 질문

작성

·

552

0

안녕하세요!

const MemoizedCounterB = React.memo(CounterB, areEqual);

위 코드에서 따로 areEqual에 따로 전달해준 값이 없는데 prevProps, nextProps는 어디서 어떻게 받아오는건가요?

퀴즈

71%나 틀려요. 한번 도전해보세요!

React 앱 최적화의 주된 목표는 무엇일까요?

새로운 기능 추가

코드 가독성 향상

서비스 성능 개선

개발 시간 단축

답변 2

1

이정환 Winterlood님의 프로필 이미지
이정환 Winterlood
지식공유자

안녕하세요 이정환입니다.

areEqual은 콜백함수로 React.memo가 리렌더링이 필요할지 판단하고자 할 때 호출됩니다.

이것은 배열 메소드의 map, forEach와 유사하다고 볼 수 있는데요, map 메서드의 경우 전달하는 콜백함수에 매개변수로 index, item이 제공되는 것 처럼 React.memo에 전달하는 areEqual 함수 또한 React.memo가 필요할때 호출하여 매개변수를 제공합니다.

0

저도 이게 궁금합니다.

React.memo의 인자로 함께 들어가는 컴포넌트의 props변화를 areEqual이 알아서 인식하게 되는건가요?

emJ님의 프로필 이미지
emJ

작성한 질문수

질문하기