


Verbessern Sie die Leistung der React-App mit Lazy Loading-Komponenten
Lazy Loading-Komponenten in React
Lazy Loading ist eine Technik in React, die es Ihnen ermöglicht, Komponenten nur dann zu laden, wenn sie benötigt werden. Dies trägt dazu bei, die Leistung Ihrer Anwendung zu verbessern, indem die anfängliche Ladezeit verkürzt wird, da zunächst nur die erforderlichen Teile der App geladen werden und der Rest bei Bedarf dynamisch geladen wird.
React bietet die Funktion React.lazy und die Komponente Suspense, um Lazy Loading zu implementieren.
So funktioniert Lazy Loading
- React.lazy: Importiert dynamisch eine Komponente.
- Suspense: Zeigt einen Fallback (z. B. einen Lade-Spinner) an, während die Komponente geladen wird.
Syntax
const LazyComponent = React.lazy(() => import('./path/to/Component')); function App() { return ( <React.Suspense fallback={<div>Loading...</div>}> <LazyComponent /> </React.Suspense> ); }
- React.lazy: Importiert dynamisch die angegebene Komponente.
- Suspense: Umhüllt die verzögert geladene Komponente und stellt eine Fallback-Benutzeroberfläche bereit, während die Komponente geladen wird.
Beispiel 1: Einfaches verzögertes Laden
Ohne Lazy Loading
import React from "react"; import HeavyComponent from "./HeavyComponent"; function App() { return ( <div> <h1>App Component</h1> <HeavyComponent /> </div> ); } export default App;
In diesem Beispiel wird die HeavyComponent immer geladen, auch wenn sie nicht sofort benötigt wird, wodurch sich die anfängliche Ladezeit verlängert.
Mit Lazy Loading
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 wird jetzt nur geladen, wenn es gerendert wird. Die Fallback-Benutzeroberfläche (z. B. „Schwere Komponente wird geladen...“) wird angezeigt, während die Komponente abgerufen wird.
Beispiel 2: Lazy Loading mit React Router
Lazy Loading ist besonders nützlich beim Routing, um Komponenten für bestimmte Routen nur dann zu laden, wenn auf diese Routen zugegriffen wird.
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;
- React.lazy: Lädt träge Komponenten für Routen wie /about und /contact.
- Suspense: Zeigt die Fallback-Benutzeroberfläche an, während die Komponenten geladen werden.
Vorteile von Lazy Loading
- Verbesserte Leistung: Reduziert die anfängliche Ladezeit, indem das Laden unnötiger Komponenten verzögert wird.
- Bessere Benutzererfahrung: Lädt Komponenten dynamisch, was bei der Erstellung reaktionsfähiger Apps hilft.
- Reduzierte Bundle-Größe: Teilt den Code in kleinere Teile auf und minimiert so die Größe des anfänglich geladenen JavaScript-Bundles.
Erweitertes Beispiel: Lazy Loading mehrerer Komponenten
Sie können mehrere Komponenten verzögert laden und mit bedingtem Rendering kombinieren.
const LazyComponent = React.lazy(() => import('./path/to/Component')); function App() { return ( <React.Suspense fallback={<div>Loading...</div>}> <LazyComponent /> </React.Suspense> ); }
Fehlerbehandlung mit Lazy Loading
Wenn das Laden der verzögert geladenen Komponente fehlschlägt (z. B. aufgrund eines Netzwerkfehlers), bietet React keine integrierte Fehlerbehandlung für verzögertes Laden. Sie können ErrorBoundary verwenden, um solche Szenarien zu behandeln.
import React from "react"; import HeavyComponent from "./HeavyComponent"; function App() { return ( <div> <h1>App Component</h1> <HeavyComponent /> </div> ); } export default App;
Best Practices für Lazy Loading
- Halten Sie Fallbacks einfach: Verwenden Sie einfache Fallback-Benutzeroberflächen wie Spinner oder Textnachrichten.
- Komponenten sinnvoll aufteilen: Teilen Sie Komponenten logisch auf, z. B. nach Route oder Funktion.
- Kombinieren Sie es mit der Codeaufteilung: Verwenden Sie Tools wie Webpack oder Vite für eine effektive Codeaufteilung.
Abschluss
Lazy Loading in React ist eine leistungsstarke Möglichkeit, die Anwendungsleistung zu verbessern und das Benutzererlebnis zu optimieren. Durch das dynamische Laden von Komponenten mithilfe von React.lazy und Suspense können Sie die anfängliche Ladezeit verkürzen und sicherstellen, dass nur die erforderlichen Teile Ihrer Anwendung abgerufen werden.
Das obige ist der detaillierte Inhalt vonVerbessern Sie die Leistung der React-App mit Lazy Loading-Komponenten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen











Python eignet sich besser für Anfänger mit einer reibungslosen Lernkurve und einer kurzen Syntax. JavaScript ist für die Front-End-Entwicklung mit einer steilen Lernkurve und einer flexiblen Syntax geeignet. 1. Python-Syntax ist intuitiv und für die Entwicklung von Datenwissenschaften und Back-End-Entwicklung geeignet. 2. JavaScript ist flexibel und in Front-End- und serverseitiger Programmierung weit verbreitet.

Zu den Hauptanwendungen von JavaScript in der Webentwicklung gehören die Interaktion der Clients, die Formüberprüfung und die asynchrone Kommunikation. 1) Dynamisches Inhaltsaktualisierung und Benutzerinteraktion durch DOM -Operationen; 2) Die Kundenüberprüfung erfolgt vor dem Einreichung von Daten, um die Benutzererfahrung zu verbessern. 3) Die Aktualisierung der Kommunikation mit dem Server wird durch AJAX -Technologie erreicht.

Die Anwendung von JavaScript in der realen Welt umfasst Front-End- und Back-End-Entwicklung. 1) Zeigen Sie Front-End-Anwendungen an, indem Sie eine TODO-Listanwendung erstellen, die DOM-Operationen und Ereignisverarbeitung umfasst. 2) Erstellen Sie RESTFUFFUPI über Node.js und express, um Back-End-Anwendungen zu demonstrieren.

Es ist für Entwickler wichtig, zu verstehen, wie die JavaScript -Engine intern funktioniert, da sie effizientere Code schreibt und Leistungs Engpässe und Optimierungsstrategien verstehen kann. 1) Der Workflow der Engine umfasst drei Phasen: Parsen, Kompilieren und Ausführung; 2) Während des Ausführungsprozesses führt die Engine dynamische Optimierung durch, wie z. B. Inline -Cache und versteckte Klassen. 3) Zu Best Practices gehören die Vermeidung globaler Variablen, die Optimierung von Schleifen, die Verwendung von const und lass und die Vermeidung übermäßiger Verwendung von Schließungen.

Sowohl Python als auch JavaScripts Entscheidungen in Entwicklungsumgebungen sind wichtig. 1) Die Entwicklungsumgebung von Python umfasst Pycharm, Jupyternotebook und Anaconda, die für Datenwissenschaft und schnelles Prototyping geeignet sind. 2) Die Entwicklungsumgebung von JavaScript umfasst Node.JS, VSCODE und WebPack, die für die Entwicklung von Front-End- und Back-End-Entwicklung geeignet sind. Durch die Auswahl der richtigen Tools nach den Projektbedürfnissen kann die Entwicklung der Entwicklung und die Erfolgsquote der Projekte verbessert werden.

C und C spielen eine wichtige Rolle in der JavaScript -Engine, die hauptsächlich zur Implementierung von Dolmetschern und JIT -Compilern verwendet wird. 1) C wird verwendet, um JavaScript -Quellcode zu analysieren und einen abstrakten Syntaxbaum zu generieren. 2) C ist für die Generierung und Ausführung von Bytecode verantwortlich. 3) C implementiert den JIT-Compiler, optimiert und kompiliert Hot-Spot-Code zur Laufzeit und verbessert die Ausführungseffizienz von JavaScript erheblich.

Python eignet sich besser für Datenwissenschaft und Automatisierung, während JavaScript besser für die Entwicklung von Front-End- und Vollstapel geeignet ist. 1. Python funktioniert in Datenwissenschaft und maschinellem Lernen gut und unter Verwendung von Bibliotheken wie Numpy und Pandas für die Datenverarbeitung und -modellierung. 2. Python ist prägnant und effizient in der Automatisierung und Skripten. 3. JavaScript ist in der Front-End-Entwicklung unverzichtbar und wird verwendet, um dynamische Webseiten und einseitige Anwendungen zu erstellen. 4. JavaScript spielt eine Rolle bei der Back-End-Entwicklung durch Node.js und unterstützt die Entwicklung der Vollstapel.

JavaScript wird in Websites, mobilen Anwendungen, Desktop-Anwendungen und serverseitigen Programmierungen häufig verwendet. 1) In der Website -Entwicklung betreibt JavaScript DOM zusammen mit HTML und CSS, um dynamische Effekte zu erzielen und Frameworks wie JQuery und React zu unterstützen. 2) Durch reaktnatives und ionisches JavaScript wird ein plattformübergreifendes mobile Anwendungen entwickelt. 3) Mit dem Elektronenframework können JavaScript Desktop -Anwendungen erstellen. 4) Node.js ermöglicht es JavaScript, auf der Serverseite auszuführen und unterstützt hohe gleichzeitige Anforderungen.
