반응형

useCallback 2

React Hooks ✅ useMemo, useCallback, useRef 리렌더링 최적화

React 앱이 느려지는 주요 원인은 대부분 “불필요한 리렌더링”입니다.컴포넌트가 재렌더링될 때마다 함수, 객체, 배열이 새로 생성되기 때문이죠. 이 문제를 해결하기 위한 세 가지 Hook:🧠 useMemo, ⚙️ useCallback, 📦 useRef 이 세 가지를 제대로 알면 성능 최적화 + 안정적인 상태 관리가 동시에 가능합니다 👇🧠 1. useMemo – 계산 결과를 메모이징복잡한 계산의 결과를 기억해두고, 의존값이 변할 때만 다시 계산. import { useMemo, useState } from "react";function ExpensiveComponent({ items }: { items: number[] }) { const [count, setCount] = useState(0)..

React, Vue 2025.12.10

React 컴포넌트 최적화 ✅ React.memo, useMemo, useCallback

리액트는 상태가 변경되면 관련된 컴포넌트를 다시 렌더링하는 방식으로 동작합니다.하지만 이 과정에서 필요 없는 컴포넌트까지 렌더링되면 성능 저하로 이어지죠.이를 방지하기 위해 메모이제이션(Memoization) 기법을 활용합니다.🧠 1. React.memo컴포넌트 자체를 메모이제이션하여 불필요한 리렌더링 방지 import React from "react";const Child = React.memo(({ value }) => { console.log("렌더링됨:", value); return {value};});export default Child;props가 바뀌지 않으면 다시 렌더링하지 않음PureComponent와 비슷한 개념📌 주의: props가 객체/배열일 경우 참조가 바뀌면 여전히 리렌더..

React, Vue 2025.10.22
반응형