[React-React Hooks] useMemo

πŸ“„ useMemo

useMemoλŠ” μ„±λŠ₯ μ΅œμ ν™” λ‹¨κ³„μ—μ„œ μ—°μ‚°λœ 값을 μž¬μ‚¬μš©ν•˜κΈ° μœ„ν•΄ μ‚¬μš©ν•©λ‹ˆλ‹€.

import { useMemo } from "react";

const memoizedValue = useMemo(() => computeExpensiveValue(a, b), [a, b]);
  • 첫 번째 인자: 콜백 ν•¨μˆ˜
  • 두 번째 인자: μ˜μ‘΄μ„± λ°°μ—΄

두 번째 인자인 λ°°μ—΄μ˜ μš”μ†Œ 값이 μ—…λ°μ΄νŠΈλ  λ•Œλ§Œ 콜백 ν•¨μˆ˜λ₯Ό λ‹€μ‹œ ν˜ΈμΆœν•©λ‹ˆλ‹€.

λ§Œμ•½ 빈 배열을 λ„˜κ²¨μ£Όλ©΄ 맨 처음 μ»΄ν¬λ„ŒνŠΈκ°€ 마운트 λ˜μ—ˆμ„ λ•Œλ§Œ 값을 κ³„μ‚°ν•˜κ³  μ΄ν›„μ—λŠ” memoizaton된 값을 κΊΌλ‚΄μ„œ μ‚¬μš©ν•©λ‹ˆλ‹€.

μ›ν•˜λŠ” 값이 λ°”λ€Œμ§€ μ•ŠμœΌλ©΄ λ¦¬λ Œλ”λ§ν•  λ•Œ μ΄μ „μ˜ 값을 μž¬μ‚¬μš©ν•©λ‹ˆλ‹€.

πŸ“„ useMemo μ‚¬μš©λͺ©μ 

  • 이전에 μ—°μ‚°λœ 값을 μž¬μ‚¬μš©ν•œλ‹€.
  • μ»΄ν¬λ„ŒνŠΈκ°€ λ Œλ”λ§λœ κ²°κ³Όλ₯Ό μž¬μ‚¬μš©ν•œλ‹€.

πŸ“„ μ£Όμ˜ν•  점

useMemoλŠ” κΌ­ ν•„μš”ν•œ κ²½μš°μ—λ§Œ μ‚¬μš©ν•©λ‹ˆλ‹€.

값을 μž¬ν™œμš©ν•˜κΈ° μœ„ν•΄ λ”°λ‘œ λ©”λͺ¨λ¦¬μ— 값을 μ €μž₯ν•΄ 놓기 λ•Œλ¬Έμž…λ‹ˆλ‹€.

λΆˆν•„μš”ν•œ 값을 μ €μž₯ν•˜λ©΄ μ„±λŠ₯이 μ•ˆμ’‹μ•„μ§ˆ 수 μžˆμŠ΅λ‹ˆλ‹€.

좜처

Leave a comment