본문 바로가기
리액트 성능 최적화 use-what-changed로 불필요한 리렌더링 잡아내기 리액트 성능 최적화! use-what-changed로 불필요한 리렌더링 잡아내기1. 들어가며React 애플리케이션을 개발하다 보면 불필요한 리렌더링이 발생하는 경우가 많습니다. 예를 들어, prop이나 state가 변경되지 않았음에도 컴포넌트가 다시 렌더링되는 경우가 있죠. 이런 불필요한 렌더링은 성능 저하를 유발할 수 있으며, 특히 대규모 애플리케이션에서는 사용자 경험에도 영향을 미칠 수 있습니다. 이럴 때 사용할 수 있는 강력한 도구 중 하나가 use-what-changed입니다. 이 훅을 활용하면 어떤 값이 변경되어 컴포넌트가 다시 렌더링되었는지 쉽게 파악할 수 있습니다. 이 글에서는 use-what-changed의 사용법과 실전 활용 방법을 알아보고, React 성능 최적화에 어떻게 도움을 줄 수.. 2025. 2. 1.
axios VS ky 장단점과 에러 처리특징과 차이 웹 개발에서 HTTP 요청 처리는 필수적인 부분입니다. 오늘날 많은 개발자들이 이를 위해 외부 라이브러리를 사용하고 있으며, 그 중에서도 axios와 ky가 특히 인기를 끌고 있습니다. 이 두 라이브러리는 각각 고유한 특징과 장단점을 가지고 있어, 프로젝트의 요구사항에 따라 선택할 수 있습니다. 이 글에서는 axios와 ky의 사용 방법, 코드 예시, 그리고 각 라이브러리의 장단점을 자세히 살펴보겠습니다. 이를 통해 여러분의 프로젝트에 가장 적합한 HTTP 클라이언트 라이브러리를 선택하는 데 도움이 되길 바랍니다.axios VS ky1. axios 사용 예시import axios from 'axios';// GET 요청axios.get('https://api.example.com/data') .then.. 2025. 1. 19.
특정 요소 외부 영역 클릭을 감지하는 방법 React와 TypeScript를 사용하여 특정 요소 외부 영역 클릭을 감지하는 방법을 설명해드리겠습니다.useOutsideClick 훅import { useEffect, RefObject } from 'react';function useOutsideClick( ref: RefObject, handler: (event: MouseEvent | TouchEvent) => void) { useEffect(() => { const listener = (event: MouseEvent | TouchEvent) => { if (!ref.current || ref.current.contains(event.target as Node)) { return; } handl.. 2025. 1. 19.
map 함수 내에서 useRef를 사용하는 방법 map 함수 내에서 useRef를 사용하는 방법에 대해 설명드리겠습니다. 일반적으로 map 내에서 직접 useRef를 호출하는 것은 불가능하지만, 다음과 같은 방법으로 구현할 수 있습니다:useRef로 배열 생성하기:import React, { useRef } from 'react';const Component = () => { const itemsRef = useRef([]); return ( {['red', 'orange', 'yellow', 'green', 'blue'].map((color, index) => ( itemsRef.current[index] = el} > {color} ))} );};이 방법.. 2025. 1. 19.
실무에서 자주 사용하는 lodash-es 함수 패턴2 프론트엔드 개발에서 lodash-es는 강력한 유틸리티 라이브러리로 널리 사용되고 있습니다. 이 라이브러리는 복잡한 데이터 처리, 성능 최적화, 그리고 일반적인 프로그래밍 작업을 간소화하는 다양한 함수를 제공합니다.  ES 모듈 시스템을 지원하는 lodash-es는 트리 쉐이킹을 통해 필요한 함수만을 번들에 포함시킬 수 있어, 최종 애플리케이션의 크기를 최적화하는 데 도움을 줍니다. 이는 웹 성능 향상에 크게 기여합니다. 이제 실무에서 특히 유용하게 사용되는 lodash-es 함수 5가지와 그 활용 패턴을 살펴보겠습니다._.cloneDeep - 깊은 복사import { cloneDeep } from 'lodash-es';const originalObject = { a: 1, b: { c: 2 }, .. 2025. 1. 19.
실무에서 자주 사용하는 lodash-es 함수 패턴1 실무에서 자주 사용하는 lodash-es 함수 패턴 1프론트엔드 개발에서 lodash-es는 매우 유용한 유틸리티 라이브러리입니다. 이 라이브러리는 다양한 JavaScript 작업을 간소화하고 최적화하는 데 도움을 주는 함수들을 제공합니다. 특히 실무에서는 데이터 처리, 성능 최적화, 비동기 작업 관리 등 다양한 상황에서 lodash-es의 함수들이 빈번하게 사용됩니다. lodash-es는 ES 모듈 시스템을 지원하여 트리 쉐이킹이 가능하므로, 필요한 함수만 가져와 사용할 수 있어 번들 크기를 최적화할 수 있습니다. 이는 웹 애플리케이션의 성능 향상에 기여합니다. 또한, lodash-es의 함수들은 크로스 브라우저 호환성이 뛰어나 다양한 환경에서 일관된 동작을 보장합니다. 프론트엔드 개발자들은 lodas.. 2025. 1. 19.