Y brif broblem sy'n gysylltiedig ag ailgyfeirio React Router 404 yw y gall fod yn anodd ei weithredu. Gan nad oes gan React Router dudalen 404 adeiledig, rhaid i ddatblygwyr greu llwybr ar gyfer y dudalen 404 â llaw ac yna ffurfweddu'r llwybrydd i ailgyfeirio unrhyw geisiadau nad ydynt yn cyd-fynd â llwybr presennol. Mae hyn yn gofyn am god a ffurfweddiad ychwanegol, a all gymryd llawer o amser ac anodd ei ddadfygio os aiff rhywbeth o'i le. Yn ogystal, os yw defnyddiwr yn llywio'n uniongyrchol i URL nad yw'n bodoli, bydd yn dal i weld tudalen gwall yn lle cael ei ailgyfeirio i'r dudalen 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> );
// Llinell 1: Mae'r llinell hon yn mewnforio'r cydrannau BrowserRouter, Route, a Switch o'r llyfrgell react-router-dom.
// Llinell 3: Mae'r llinell hon yn diffinio swyddogaeth o'r enw App sy'n dychwelyd JSX.
// Llinellau 5-7: Mae'r llinellau hyn yn lapio'r gydran App mewn cydran Llwybrydd o react-router-dom.
// Llinellau 8-10: Mae'r llinellau hyn yn diffinio dau lwybr ar gyfer y cydrannau Cartref ac Ynghylch.
// Llinell 12: Mae'r llinell hon yn diffinio llwybr sy'n ailgyfeirio i'r Hafan os nad oes llwybr arall yn cyfateb.
Beth yw Cod Gwall 404
Mae cod gwall 404 yn React Router yn god statws HTTP sy'n nodi na ellid dod o hyd i'r adnodd y gofynnwyd amdano. Fel arfer caiff ei ddychwelyd pan fydd defnyddiwr yn ceisio cyrchu tudalen neu lwybr nad yw'n bodoli. Gall hyn ddigwydd os yw'r defnyddiwr wedi camdeipio URL, neu os yw'r dudalen wedi'i thynnu neu ei symud heb ddiweddaru'r dolenni iddi. Pan fydd hyn yn digwydd, bydd React Router yn arddangos tudalen generig 404 gyda neges briodol yn hysbysu'r defnyddiwr o'u gwall.
404 Ailgyfeirio
Yn React Router, mae ailgyfeiriad 404 yn ffordd i ailgyfeirio defnyddwyr i dudalen wahanol pan fyddant yn ceisio cyrchu URL annilys. Gall hyn fod yn ddefnyddiol ar gyfer rhoi profiad gwell i ddefnyddwyr pan fyddant yn mynd i mewn i URL anghywir neu'n ceisio cyrchu tudalen nad yw'n bodoli. Gellir gweithredu'r ailgyfeiriad 404 gan ddefnyddio'r gydran Ailgyfeirio o React Router, sy'n eich galluogi i nodi enw llwybr y dudalen rydych chi am ailgyfeirio'r defnyddiwr iddi. Er enghraifft, os bydd rhywun yn ceisio cyrchu /invalid-url, gallech ddefnyddio'r gydran Ailgyfeirio fel hyn: