Kursinhalt
React Router
React Router
Implementierung Einer Fallback-Komponente
Konzentrieren wir uns darauf, eine Fallback-Komponente zu implementieren. Dieser Schritt ist entscheidend, um das Benutzererlebnis zu verbessern, indem visuelles Feedback bereitgestellt wird, während bestimmte Webseiten geladen werden.
React stellt die Suspense
-Komponente für diesen Zweck bereit. Die Suspense
-Komponente ermöglicht es uns, eine Fallback-Komponente anzugeben, die angezeigt wird, während der Hauptinhalt geladen wird. Hier ist die Syntax zur Implementierung dieses Features:
import { Suspense } from "react";
const App = () => {
return (
<Suspense fallback={<LoaderComponent />}>
{/* Routes */}
</Suspense>
);
};
- Zeile 1: Wir importieren die
Suspense
-Komponente aus der React-Bibliothek; - Zeilen 5 und 7: Wir umschließen alle App-Routen mit der
Suspense
-Komponente. Dies ermöglicht es uns, eine Fallback-Komponente anzuzeigen, während eine Route geladen wird; - Zeile 5: Die
Suspense
-Komponente akzeptiert einefallback
-Eigenschaft. In diesem Fall ist diefallback
-Eigenschaft auf<LoaderComponent />
gesetzt, was den Inhalt angibt, der angezeigt werden soll, während der Hauptinhalt geladen wird.
Beispiel
Nun integrieren wir einen Fallback-Mechanismus in unsere App:
import React, { Suspense, lazy } from "react";
import { Routes, Route } from "react-router-dom";
import Loader from "../Loader/Loader";
const HomePage = lazy(() => import("../HomePage/HomePage"));
const AboutPage = lazy(() => import("../AboutPage/AboutPage"));
const ContactsPage = lazy(() => import("../ContactsPage/ContactsPage"));
const App = () => {
return (
<>
<Suspense fallback={<Loader />}>
<Routes>
<Route path="/" element={<HomePage />} />
<Route path="/about" element={<AboutPage />} />
<Route path="/contacts" element={<ContactsPage />} />
</Routes>
</Suspense>
</>
);
};
Der bereitgestellte Code demonstriert die Integration eines Fallback-Mechanismus innerhalb der App
-Komponente. Durch die Verwendung der Suspense
-Komponente mit einem fallback
, der als <Loader />
angegeben ist, stellen wir sicher, dass das visuelle Feedback angezeigt wird, während die Routen geladen werden.
Danke für Ihr Feedback!