⊗jsrtPmRtNFE 25 of 47 menu

Die Verwerking van 'Not Found'-foute in React Router

Wanneer jy 'n toepassing skep, moet jy ook aandag gee aan die verskyning van verskeie foute tydens die verdere gebruik daarvan. In hierdie les sal ons leer hoe om met die fout 'Not Found' te werk. So 'n fout kan voorkom, byvoorbeeld, as 'n gebruiker op 'n skakel klik wat na 'n nie-bestaande bladsy lei.

Om mee te begin, laat ons ons toepassing oopmaak wat ons in vorige lesse gebou het, en die opmaak van die komponent Root vervang. Nou sal, wanneer die toepassing begin, 'n lys van twee produkte vertoon word:

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

Laat ons 'n bietjie styl byvoeg in index.css:

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

Klik nou op die skakels. Aangesien ons geen bladsy-uitlegte vir ons produkte het nie, sal die skakels ons net na 'n skerm met die fout '404 Not Found' lei en 'n teregwysing dat ons self iets mooiers en meer interessants kon bedink het as wat React Router vir ons vertoon het by verstek.

Laat ons ons eie bladsy skep wat vertoon sal word in die geval van 'n 404-fout. Om dit te doen, skep in die gids src die lêer error-page-404.jsx.

Binne die React-komponent ErrorPage404 sal ons die hok useRouteError gebruik om die fout vas te vang, wat ons in die konsole sal afdruk:

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

Vervolgens sal ons in die opmaak van die komponent ErrorPage404 'n paar opskrifte vertoon wat oor die fout berig en ons sal sulke eienskappe van die voorwerp error afdruk, soos statusText en data (die voorwerp error en sy eienskappe kan jy ook sien as jy die konsole oopmaak en op ons skakels in die toepassing begin klik).

return ( <div> <h1>Hi! Dit is 'n Foutbladsy</h1> <h2>404 Not Found Fout</h2> <p> <i>{error.statusText}</i> </p> <p> <i>{error.data}</i> </p> </div> );

Moet asseblief nie vergeet om die lêer main.jsx oop te maak nie en nog 'n invoerlyn met ErrorPage404 by te voeg:

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

En voeg ook nog 'n eienskap errorElement by in die voorwerp Router - hierdie element word vertoon wanneer 'n fout op hierdie roete voorkom. Die waarde van die foutelement sal ons komponent ErrorPage404 wees:

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

Neem die toepassing wat jy in die opdrag vir die vorige les geskep het. Voeg op die hoofblad 'n lys by wat uit 'n paar skakels bestaan, soos in die les getoon. Laat die waardes van die href van die skakels /students/1 en /students/2 wees, en die teks van die skakels - 'Student1' en 'Student2' onderskeidelik. Maak seker dat wanneer jy op die skakels klik daar 'n skerm met die fout verskyn wat React Router by verstek vertoon.

En nou, skep jou eie aparte bladsy met 'n 404-fout, jy kan daarop uitdruk wat jy wil. Koppel dit soos in die les getoon. En maak nou seker dat wanneer jy op die skakels klik, jy presies daarop beland.

Afrikaans
AzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ons gebruik koekies vir die werking van die webwerf, ontleding en personalisering. Die verwerking van data geskied volgens die Privaatheidsbeleid.
aanvaar alles instel verwerp