Ratkaistu: reagoi reitittimen 404 uudelleenohjaus

Suurin React Router 404 -uudelleenohjaukseen liittyvรค ongelma on, ettรค sen toteuttaminen voi olla vaikeaa. Koska React Routerissa ei ole sisรครคnrakennettua 404-sivua, kehittรคjien on luotava manuaalisesti reitti 404-sivulle ja mรครคritettรคvรค reititin ohjaamaan uudelleen kaikki pyynnรถt, jotka eivรคt vastaa olemassa olevaa reittiรค. Tรคmรค vaatii lisรคkoodia ja -mรครคrityksiรค, mikรค voi olla aikaa vievรครค ja vaikeaa virheenkorjaus, jos jokin menee pieleen. Lisรคksi, jos kรคyttรคjรค siirtyy suoraan URL-osoitteeseen, jota ei ole olemassa, hรคn nรคkee silti virhesivun sen sijaan, ettรค hรคnet ohjattaisiin 404-sivulle.

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>  
);

// Rivi 1: Tรคmรค rivi tuo BrowserRouter-, Route- ja Switch-komponentit react-router-dom-kirjastosta.

// Rivi 3: Tรคmรค rivi mรครคrittรครค funktion nimeltรค App, joka palauttaa JSX:n.

// Rivit 5-7: Nรคmรค rivit kรครคrivรคt sovelluskomponentin reititinkomponenttiin react-router-domista.

// Rivit 8-10: Nรคmรค rivit mรครคrittelevรคt kaksi reittiรค Home- ja About-komponenteille.

// Rivi 12: Tรคmรค rivi mรครคrittรครค reitin, joka ohjaa kotisivulle, jos muuta reittiรค ei lรถydy.

Mikรค on 404-virhekoodi

React Routerin virhekoodi 404 on HTTP-tilakoodi, joka osoittaa, ettรค pyydettyรค resurssia ei lรถydy. Se palautetaan yleensรค, kun kรคyttรคjรค yrittรครค kรคyttรครค sivua tai reittiรค, jota ei ole olemassa. Tรคmรค voi tapahtua, jos kรคyttรคjรค on kirjoittanut URL-osoitteen vรครคrin tai jos sivu on poistettu tai siirretty pรคivittรคmรคttรค sen linkkejรค. Kun nรคin tapahtuu, React Router nรคyttรครค yleisen 404-sivun, jossa on asianmukainen viesti, joka ilmoittaa kรคyttรคjรคlle virheestรค.

404 uudelleenohjaus

React Routerissa 404-uudelleenohjaus on tapa ohjata kรคyttรคjรคt toiselle sivulle, kun he yrittรคvรคt kรคyttรครค virheellistรค URL-osoitetta. Tรคmรค voi olla hyรถdyllistรค tarjota kรคyttรคjille parempi kรคyttรถkokemus, kun he kirjoittavat vรครคrรคn URL-osoitteen tai yrittรคvรคt pรครคstรค sivulle, jota ei ole olemassa. 404-uudelleenohjaus voidaan toteuttaa React Routerin Redirect-komponentilla, jonka avulla voit mรครคrittรครค sen sivun polun, jolle haluat ohjata kรคyttรคjรคn. Jos esimerkiksi joku yrittรครค kรคyttรครค osoitetta /invalid-url, voit kรคyttรครค uudelleenohjauskomponenttia seuraavasti:

Related viestiรค:

Jรคtรค kommentti