Rezolvat: reacţionează router v6 suspans leneş

Principala problemă legată de suspansul leneș React Router v6 este că nu este încă pe deplin acceptat de toate browserele. Aceasta înseamnă că utilizatorii pot întâmpina probleme atunci când încearcă să acceseze anumite pagini sau funcții de pe site-uri web folosind React Router v6 lazy suspense. În plus, există încă unele erori și probleme de performanță care trebuie rezolvate înainte de a putea fi utilizat în mediile de producție. În cele din urmă, API-ul pentru componentele lazy loading cu Suspense este încă în fazele sale incipiente și poate necesita timp de dezvoltare suplimentar pentru a asigura compatibilitatea cu aplicațiile existente.

import React, { Suspense } from 'react';
import { BrowserRouter as Router, Route, Switch } from 'react-router-dom';

const Home = React.lazy(() => import('./Home'));
const About = React.lazy(() => import('./About'));
const Contact = React.lazy(() => import('./Contact'));
 
function AppRouter() { 

    return ( 

        <Router> 

            <Suspense fallback={<div>Loading...</div>}>

                <Switch> 

                    <Route exact path="/" component={Home} /> 

                    <Route path="/about" component={About} /> 

                    <Route path="/contact" component={Contact} />  

                </Switch>  

            </Suspense>  

        </Router>  

    );  
    
}  
export default AppRouter;

1. Acest cod importă biblioteca React, precum și componenta Suspense din React și componentele BrowserRouter, Route și Switch din react-router-dom.
2. Apoi definește trei componente (Acasă, Despre, Contact) folosind funcția de încărcare leneșă a React pentru a le importa din fișierele respective.
3. Este definită funcția AppRouter care returnează o componentă Router care conține o componentă Suspense cu o componentă Switch în interiorul acesteia.
4. În interiorul componentei Switch se află trei componente Route care redă fiecare una dintre componentele importate atunci când căile lor respective sunt potrivite în URL (de exemplu, „/” pentru Acasă).
5. În cele din urmă, AppRouter este exportat, astfel încât să poată fi utilizat în altă parte a aplicației.

Cum folosiți încărcarea leneșă în routerul react v6

v6

Lazy loading este o tehnică folosită pentru a amâna încărcarea anumitor componente până când sunt necesare. În React Router v6, încărcarea leneră poate fi realizată utilizând sintaxa dinamică import(). Această sintaxă vă permite să vă împărțiți codul în mai multe pachete care pot fi apoi încărcate la cerere sau în paralel. Acest lucru ajută la reducerea dimensiunii inițiale a pachetului și la îmbunătățirea performanței. Pentru a utiliza încărcarea leneră cu React Router v6, trebuie să includeți componenta pe care doriți să o încărcați leneș într-un apel de import() dinamic. Apelul import() va returna o promisiune care se va rezolva atunci când componenta a fost încărcată și este gata să fie redată.

Ce este suspans și leneș în reacție

Suspense în React Router este o modalitate de a întârzia încărcarea unei rute până când sunt îndeplinite anumite condiții. Aceasta poate fi folosită pentru a îmbunătăți performanța unei aplicații prin încărcarea rutelor numai atunci când acestea sunt necesare. De exemplu, dacă un utilizator navighează către o pagină care necesită autentificare, ruta poate fi amânată până când autentificarea este finalizată.

Încărcarea leneră în React Router permite ca componentele să fie încărcate asincron atunci când sunt necesare, în loc să fie încărcate toate odată. Acest lucru îmbunătățește performanța prin încărcarea componentelor numai atunci când acestea sunt necesare și reduce cantitatea de date care trebuie transferată prin rețea. Încărcarea leneră ajută, de asemenea, la împărțirea codului, permițând ca aplicațiile mai mari să fie împărțite în bucăți mai mici care pot fi încărcate la cerere.

Postări asemănatoare:

Lăsați un comentariu