지연 로딩은 필요할 때만 구성요소를 로드할 수 있게 해주는 React의 기술입니다. 처음에는 앱의 필수 부분만 로드되고 나머지 부분은 필요할 때 동적으로 로드되므로 초기 로드 시간을 줄여 애플리케이션 성능을 향상시키는 데 도움이 됩니다.
React는 지연 로딩을 구현하기 위해 React.lazy 함수와 Suspense 컴포넌트를 제공합니다.
const LazyComponent = React.lazy(() => import('./path/to/Component')); function App() { return ( <React.Suspense fallback={<div>Loading...</div>}> <LazyComponent /> </React.Suspense> ); }
import React from "react"; import HeavyComponent from "./HeavyComponent"; function App() { return ( <div> <h1>App Component</h1> <HeavyComponent /> </div> ); } export default App;
이 예에서는 HeavyComponent가 즉시 필요하지 않더라도 항상 로드되므로 초기 로드 시간이 늘어납니다.
import React, { Suspense } from "react"; const HeavyComponent = React.lazy(() => import("./HeavyComponent")); function App() { return ( <div> <h1>App Component</h1> <Suspense fallback={<div>Loading Heavy Component...</div>}> <HeavyComponent /> </Suspense> </div> ); } export default App;
이제 HeavyComponent는 렌더링될 때만 로드됩니다. 구성 요소를 가져오는 동안 대체 UI(예: "무거운 구성 요소 로드 중...")가 표시됩니다.
지연 로딩은 특정 경로에 액세스할 때만 특정 경로의 구성요소를 로드하도록 라우팅하는 데 특히 유용합니다.
import React, { Suspense } from "react"; import { BrowserRouter as Router, Routes, Route } from "react-router-dom"; const Home = React.lazy(() => import("./Home")); const About = React.lazy(() => import("./About")); const Contact = React.lazy(() => import("./Contact")); function App() { return ( <Router> <Suspense fallback={<div>Loading Page...</div>}> <Routes> <Route path="/" element={<Home />} /> <Route path="/about" element={<About />} /> <Route path="/contact" element={<Contact />} /> </Routes> </Suspense> </Router> ); } export default App;
여러 구성요소를 지연 로드하고 조건부 렌더링으로 결합할 수 있습니다.
const LazyComponent = React.lazy(() => import('./path/to/Component')); function App() { return ( <React.Suspense fallback={<div>Loading...</div>}> <LazyComponent /> </React.Suspense> ); }
지연 로딩 구성 요소가 로드에 실패하는 경우(예: 네트워크 오류) React는 지연 로딩에 대한 기본 오류 처리 기능을 제공하지 않습니다. ErrorBoundary를 사용하여 이러한 시나리오를 처리할 수 있습니다.
import React from "react"; import HeavyComponent from "./HeavyComponent"; function App() { return ( <div> <h1>App Component</h1> <HeavyComponent /> </div> ); } export default App;
React의 지연 로딩은 애플리케이션 성능을 향상하고 사용자 경험을 최적화하는 강력한 방법입니다. React.lazy 및 Suspense를 사용하여 구성 요소를 동적으로 로드하면 초기 로드 시간을 줄이고 애플리케이션에서 필요한 부분만 가져오도록 할 수 있습니다.
위 내용은 지연 로딩 구성 요소로 React 앱 성능 향상의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!