⊗jsrtPmRtNFE 25 of 47 menu

Viga 404 (Not Found) töötlemine React Routeris

Rakenduse loomisel tuleb tähelepanu pöörata ka erinevate vigade tekkimisele selle hilisema kasutamise käigus. Selles õppetükis õpime töötama veaga 'Not Found'. Selline viga võib tekkida, näiteks kui kasutaja klõpsab lingil, mis viib olematule lehele.

Alustuseks avame oma rakenduse, mida me tegime eelmistel tundidel, ja asendame komponendi Root väljanägemise. Nüüd rakenduse käivitamisel kuvatakse kahest tootest koosnev loend:

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

Lisame natuke stiile faili index.css:

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

Nüüd klõpsake linkidel. Kuna meil pole meie toodete jaoks lehe makette, siis lingid viivad meid ainult veaekraanile '404 Not Found' koos etteheitega, et me oleksime võinud ise midagi ilusamat ja huvitavamat välja mõelda, kui see, mida React Router meile vaikimisi kuvas.

Loome oma lehe, mida kuvatakse juhul kui tekib viga 404. Selleks kaustas src loome faili error-page-404.jsx.

React komponendi ErrorPage404 sees kasutame hook'i useRouteError vea püüdmiseks, mille me väljastame konsooli:

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

Järgmisena komponendi ErrorPage404 väljanägemises kuvame paari pealkirja, mis teavitavad veast ja väljastame objekti error sellised omadused nagu statusText ja data (objekti error ja selle omadused saate näha ka siis, kui avate konsooli ja hakkate meie linkidele rakenduses klõpsama).

return ( <div> <h1>Tere! See on vealeht</h1> <h2>Viga 404 (Not Found)</h2> <p> <i>{error.statusText}</i> </p> <p> <i>{error.data}</i> </p> </div> );

Ärge kindlasti unustage avada faili main.jsx ja lisada veel üks import ErrorPage404 jaoks:

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

Ja lisage veel üks omadus errorElement objekti Router - see element kuvatakse, kui sellel marsruudil tekib viga. Veaelemendi väärtuseks on meie komponent ErrorPage404:

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

Võtke rakendus, mille te lõite eelmise tunni ülesande jaoks. Lisage pealehele paarist lingist koosnev loend, nagu on näidatud tunnis. Olgu linkide href väärtusteks - /students/1 ja /students/2, ja linkide tekstiks vastavalt 'Student1' ja 'Student2'. Veenduge, et linkide klõpsamisel tekkib veaekraan, mille React Router kuvab vaikimisi.

Ja nüüd looge oma eraldi leht veaga 404, võite sellel kuvada seda, mida soovite. Ühendage see, nagu on näidatud tunnis. Ja nüüd veenduge, et linkide klõpsamisel saabute just sellele lehele.

Eesti
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Me kasutame saidi toimimiseks, analüüsi ja personaliseerimiseks küpsiseid. Andmete töötlemine toimub vastavalt Privaatsuspoliitikale.
nõustu kõigega häälesta keeldu