기술나눔

React의 useCallback

2024-07-08

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

소개

React 애플리케이션 개발에서 구성요소 성능 최적화는 지속적인 프로세스입니다.useCallback콜백 함수를 메모하여 구성 요소의 수명 주기 전반에 걸쳐 이러한 함수가 일관되게 유지되도록 함으로써 불필요한 렌더링 및 성능 문제를 방지하는 데 사용되는 React Hook입니다.

문제 배경

React에서는 컴포넌트의 props나 상태가 변경되면 해당 컴포넌트가 다시 렌더링됩니다. 하위 구성 요소가 상위 구성 요소의 소품에 의존하고 해당 소품이 함수인 경우 상위 구성 요소가 렌더링될 때마다 새로운 함수 인스턴스가 생성됩니다. 이로 인해 소품이 없더라도 하위 구성 요소도 다시 렌더링될 수 있습니다. 본질적으로 변경되었습니다.

useCallback역할

useCallback 위의 문제를 해결하는 데 사용됩니다. 종속성이 변경되지 않는 한 구성 요소의 수명 동안 함수가 변경되지 않도록 콜백 함수를 메모합니다.

useCallback매개변수 설명

useCallback두 가지 매개변수를 허용합니다:

  1. 콜백: 메모하고 싶은 기능입니다.
  2. 종속성 배열 : 기능적 종속성의 값을 포함하는 배열입니다. 콜백 함수는 이러한 종속성 중 하나가 변경될 때만 다시 생성됩니다.

기본 구문은 다음과 같습니다.

const memoizedCallback = useCallback(
  () =