대상 선정
Profiler에서 자주 렌더되고 렌더 비용이 있는 컴포넌트를 고른다.
React.memo는 컴포넌트를 빠르게 만드는 스위치가 아니라, 같은 props로 다시 렌더될 때 이전 결과를 재사용하게 하는 얕은 비교 장치다.
Profiler에서 자주 렌더되고 렌더 비용이 있는 컴포넌트를 고른다.
부모가 넘기는 객체, 배열, 콜백이 매번 새로 생성되는지 확인한다.
같은 props일 때 스킵할 수 있는 순수한 표시 컴포넌트에 감싼다.
commit duration과 렌더 횟수가 줄었는지 기록으로 확인한다.
const ProductRow = memo(function ProductRow({ product, onSelect }) {
return <button onClick={() => onSelect(product.id)}>{product.name}</button>;
});