반응형

상태관리 2

Suspense 제대로 쓰기 – 데이터 로딩 UX와 코드 스플리팅 동시 개선

안녕하세요 😊Suspense는 로딩 중 상태를 선언적으로 처리할 수 있도록 도와주는 React 기능입니다.두 가지 핵심 사용처는 ① 코드 스플리팅(React.lazy) ② 데이터 로딩 경계 처리입니다.1) 코드 스플리팅 기본 import React, { Suspense } from "react";const Chart = React.lazy(() => import("./Chart"));export default function Dashboard(){ return ( 차트 로딩 중…}> );}2) 데이터 로딩용 리소스 패턴(기초)간단 예시: Promise가 해결될 때까지 읽기를 “멈추는” 래퍼를 만들어 Suspense로 감쌉니다.// resource.jsexport functio..

React, Vue 2025.09.10

React useTransition이란? 느린 업데이트를 비동기 전환으로 부드럽게 처리하는 방법

안녕하세요 😊이번 글에서는 React 18 이후 도입된 동시성(Concurrency) 관련 Hook인 **useTransition**을 알아보겠습니다.useTransition은 덜 중요한 상태 업데이트를 **비동기 전환(transition)**으로 표시하여, 사용자의 타이핑/클릭 같은 긴급한 인터랙션이 느린 렌더링에 막히지 않도록 도와줍니다.1) useTransition 한 줄 정의긴급도 낮은 업데이트를 “전환”으로 표시해, UI가 끊기지 않게 만드는 Hook반환값: [isPending, startTransition]isPending: 전환 중인지 여부 (로딩 스피너, 로딩 텍스트 등에 활용)startTransition(cb): cb 안의 상태 업데이트를 낮은 우선순위로 실행2) 언제 쓰면 좋은가요?검..

React, Vue 2025.08.12
반응형