La ĉefa problemo rilate al React Router 404 alidirektilo estas, ke ĝi povas esti malfacile efektivigi. Ĉar React Router ne havas enkonstruitan 404 paĝon, programistoj devas permane krei itineron por la 404 paĝo kaj tiam agordi la enkursigilon por redirekti iujn ajn petojn kiuj ne kongruas kun ekzistanta itinero. Ĉi tio postulas plian kodon kaj agordon, kiuj povas esti tempopostulaj kaj malfacile elpurigeblaj se io misfunkcias. Aldone, se uzanto navigas rekte al URL, kiu ne ekzistas, li ankoraŭ vidos erarpaĝon anstataŭ esti redirektita al la paĝo 404.
import { BrowserRouter as Router, Route, Switch } from "react-router-dom"; const App = () => ( <Router> <Switch> <Route exact path="/" component={Home} /> <Route exact path="/about" component={About} /> {/* 404 Redirect */} <Route render={() => (<Redirect to="/" />)} /> </Switch> </Router> );
// Linio 1: Ĉi tiu linio importas la komponentojn BrowserRouter, Route, kaj Switch el la biblioteko react-router-dom.
// Linio 3: Ĉi tiu linio difinas funkcion nomatan App, kiu resendas JSX.
// Linioj 5-7: Ĉi tiuj linioj envolvas la App-komponenton en Router-komponento de react-router-dom.
// Linioj 8-10: Ĉi tiuj linioj difinas du itinerojn por la Hejmo kaj Pri komponantoj respektive.
// Linio 12: Ĉi tiu linio difinas itineron, kiu redirektas al la Hejmpaĝo se neniu alia itinero kongruas.
Kio estas 404 Erara Kodo
404-erara kodo en React Router estas HTTP-statusa kodo, kiu indikas, ke la petita rimedo ne troviĝis. Ĝi estas kutime resendita kiam uzanto provas aliri paĝon aŭ itineron kiu ne ekzistas. Ĉi tio povas okazi se la uzanto mistajpis URL, aŭ se la paĝo estis forigita aŭ movita sen ĝisdatigi la ligilojn al ĝi. Kiam ĉi tio okazas, React Router montros ĝeneralan 404 paĝon kun taŭga mesaĝo informanta la uzanton pri ilia eraro.
404 Alidirektilo
En React Router, 404 alidirektilo estas maniero redirekti uzantojn al malsama paĝo kiam ili provas aliri nevalidan URL. Ĉi tio povas esti utila por havigi al uzantoj pli bonan sperton kiam ili enigas malĝustan URL aŭ provas aliri paĝon kiu ne ekzistas. La 404 alidirektilo povas esti efektivigita uzante la Redirektilon de React Router, kiu ebligas al vi specifi la padnomon de la paĝo, al kiu vi volas alidirekti la uzanton. Ekzemple, se iu provas aliri /invalid-url, vi povus uzi la Redirektilon tiel: