Suspense를 사용하여 자바스크립트 특정 동작의 로딩 상태를 관리하는 방법은?
Suspense는 React에서 도입된 개념으로, 비동기 작업을 처리하고 로딩 상태를 관리하는데 사용됩니다. Suspense를 사용하면 특정 동작이 완료될 때까지 페이지를 로딩 상태로 유지할 수 있습니다.
아래는 자바스크립트에서 Suspense를 사용하여 로딩 상태를 관리하는 간단한 예제입니다:
import React, { Suspense } from 'react';
// 비동기로 로딩할 컴포넌트 import
const MyComponent = React.lazy(() => import('./MyComponent'));
function App() {
return (
<div>
<h1>로딩 상태 관리 예제</h1>
<Suspense fallback={<div>Loading...</div>}>
<MyComponent />
</Suspense>
</div>
);
}
export default App;
위의 코드에서는 React.lazy
함수를 사용하여 비동기로 MyComponent
를 로딩하고, Suspense
컴포넌트를 사용하여 로딩 중일 때 표시할 fallback 컴포넌트를 지정합니다. 이렇게 함으로써 MyComponent
가 로딩되지 않은 상태에서는 fallback 컴포넌트가 표시되고, 로딩이 완료되면 실제 컴포넌트가 렌더링됩니다.
Suspense를 사용하여 로딩 상태를 관리하면 사용자에게 로딩 중임을 알리고, 필요한 리소스가 로드되기를 기다릴 수 있습니다. 이를 통해 더 나은 사용자 경험을 제공할 수 있습니다.
더 자세한 내용은 React 공식 문서의 Suspense 섹션을 참고하시기 바랍니다.
- #JavaScript
- #React