728x90
반응형
크롬 확장 프로그램 설치 하면 (React Developer Tool)
component, profiler 생김
아래 그림에서 각각 컴포넌트 A, B 별 렌더 시간 나옴
React.memo 사용하여 성능 개선
const Message = React.memo(({ message }) => {
return <p>{message}</p>
})
useCallback 활용한 함수 최적화
아래 처럼 감싸서 함수 전달 하면 값, 참조 위치 등이 변할 때만 렌더링 됨
const B = ({message, posts}) => {
console.log("B is rendered");
const testFunc = useCallback(() => {}, []);
return (
<div>
<h1>B Component</h1>
<Message message={message} />
<List post={posts} testFunc={testFunc}/>
</div>
)
}
useMemo 활용한 결과값 최적화
결과값이 바뀌지 않으면 렌더링 되더라도 연산 하지 않음
function Component({a, b}) {
const result = useMemo(()=>compute(a,b,[a,b]))
return <div>{result}</div>
}
728x90
반응형
'React_ReactNative' 카테고리의 다른 글
React Native 시뮬레이터 reload (0) | 2024.03.15 |
---|---|
Windows React Native 환경 셋팅 (0) | 2023.11.10 |
TypeScript Project 준비 (1) | 2023.06.09 |
Study 첫 시작 (0) | 2023.06.02 |