⊗jsrtPmRtNFE 25 of 47 menu

Foutafhandeling voor Not Found in React Router

Bij het maken van een applicatie is het belangrijk aandacht te besteden aan het optreden van verschillende fouten tijdens het gebruik. In deze les leren we hoe we om kunnen gaan met de fout 'Not Found'. Deze fout kan bijvoorbeeld verschijnen als een gebruiker op een link klikt die naar een niet-bestaande pagina leidt.

Laten we eerst onze applicatie openen, die we in eerdere lessen hebben gemaakt, en de opmaak van de component Root vervangen. Nu zal bij het starten van de applicatie een lijst met twee producten worden weergegeven:

function Root() { return ( <nav> <a href={`/products/1`}>Product1</a> <a href={`/products/2`}>Product2</a> </nav> ); } export default Root;

Laten we wat stijl toevoegen aan index.css:

body { font-size: 18px; line-height: 1.5; } nav { display: flex; flex-direction: column; } a { text-decoration: none; color: blue; }

En klik nu eens op de links. Omdat we geen paginalay-outs voor onze producten hebben, zullen de links ons alleen naar een scherm met de fout '404 Not Found' leiden en een verwijt dat we zelf iets mooiers en interessanters hadden kunnen bedenken dan wat React Router ons standaard heeft getoond.

Laten we onze eigen pagina maken, die wordt weergegeven in het geval van een 404-fout. Hiervoor maken we in de map src een bestand error-page-404.jsx.

Binnen de React-component ErrorPage404 gebruiken we de hook useRouteError om de fout op te vangen, die we naar de console zullen loggen:

import { useRouteError } from 'react-router-dom'; function ErrorPage404() { const error = useRouteError(); console.error(error); } export default ErrorPage404;

Vervolgens zullen we in de opmaak van de component ErrorPage404 een paar koppen weergeven die de fout melden en we zullen eigenschappen van het object error tonen, zoals statusText en data (het object error en zijn eigenschappen kunt u ook zien als u de console opent en op onze links in de applicatie begint te klikken).

return ( <div> <h1>Hallo! Dit is een foutpagina</h1> <h2>404 Niet Gevonden Fout</h2> <p> <i>{error.statusText}</i> </p> <p> <i>{error.data}</i> </p> </div> );

Vergeet vooral niet om het bestand main.jsx te openen en nog een importregel met ErrorPage404 toe te voegen:

import ErrorPage404 from './error-page-404';

En voeg ook nog een eigenschap errorElement toe aan het object Router - dit element wordt weergegeven wanneer er een fout optreedt op deze route. De waarde van het foutelement zal onze component ErrorPage404 zijn:

const router = createBrowserRouter([ { path: '/', element: <Root />, errorElement: <ErrorPage404 />, }, ]);

Neem de applicatie die je in de opdracht van de vorige les hebt gemaakt. Voeg op de hoofdpagina een lijst toe, bestaande uit een paar links, zoals getoond in de les. Laat de waarden van href van de links - /students/1 en /students/2 zijn, en de tekst van de links - 'Student1' en 'Student2' respectievelijk. Controleer of er bij het klikken op de links een scherm met de standaard React Router fout verschijnt.

En maak nu je eigen aparte pagina voor de 404-fout, je kunt erop weergeven wat je maar wilt. Sluit deze aan, zoals getoond in de les. En controleer nu of je bij het klikken op de links precies op deze pagina terechtkomt.

Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren