Concurrent Mode(Concurrent Rendering)와 Suspense를 활용해 비동기 UI를 구성하는 방법과, 이 패턴의 장단점은 무엇인가요?
** Concurrent Mode & Suspense
* Concurrent Mode : 리액트 18이상에서 활성화 가능하고, 렌더링을 비동기로 수행하여 UI 차단 없이 업데이트를 처리한다.
* Suspense : 비동기 컴포넌트 ( ex : lazy import, data fetch ) 로딩 시 fallback UI를 자동표시
import {Suspense, lazy} from 'react';
const Profiles = lazy(()=> import ('./Profile'));
function App(){
return(
<Suspense fallback={<div>Loading Profile...</div>}>
<Profile userId={123} />
</Suspense>
);
}
사용자 입력에 즉시 반응해서 부드러운 ux를 제공한다는 것과
코드 분할 및 데이터 패칭 통합이라는 장점이 있지만,
복잡도가 증가한다. 동시성 버그가 일어날 수 있다.
아직 일부 라이브러리 호환성이 미흡하다.
'Frontend > React' 카테고리의 다른 글
React Fiber 아키텍처는 무엇이고, React reconciliation과정에서 어떤 역할을 하는지 설명하세요. (0) | 2025.03.21 |
---|---|
React 18 ) useTransition (0) | 2025.03.18 |
React 19 ) useActionState( 구 useFormState ) (0) | 2025.03.18 |
리액트 메이저 버전 업데이트 (2) - use (1) | 2024.12.12 |
리액트 메이저 버전 업데이트 (1) - useTransition (0) | 2024.12.11 |