Solucionat: l'encaminador de reacció afegeix una alternativa per atrapar-ho tot

El principal problema relacionat amb React Router i afegir una ruta alternativa per capturar-ho tot és que pot ser difícil configurar correctament la ruta alternativa. La ruta alternativa s'ha de configurar de manera que capti totes les sol·licituds, incloses les que no són rutes vàlides. Si la configuració no es fa correctament, les sol·licituds de rutes no vàlides no seran capturades per la ruta alternativa i poden provocar errors o comportaments inesperats. A més, si l'aplicació conté rutes dinàmiques (per exemple, basades en l'entrada de l'usuari), aquestes s'han de tenir en compte a l'hora de configurar la ruta alternativa perquè també siguin atrapades per ella.

import { BrowserRouter as Router, Route, Switch } from 'react-router-dom';

const App = () => (
  <Router>
    <Switch>
      <Route exact path="/" component={Home} />
      <Route path="/about" component={About} />

      {/* Fallback route */}
      <Route component={NoMatch} /> 

    </Switch>
  </Router>  
);

// Línia 1: aquesta línia importa els components BrowserRouter, Route i Switch de la biblioteca react-router-dom.
// Línia 2: aquesta línia defineix una constant anomenada App que és un component de funció.
// Línia 3: aquesta línia representa el component Router de react-router-dom.
// Línia 4: aquesta línia representa el component Switch de react-router-dom.
// Línies 5 i 6: aquestes línies mostren dos components de ruta amb camins exactes i components que s'han de representar quan aquests camins coincideixen.
// Línia 8: aquesta línia representa una ruta alternativa si no coincideix cap de les altres rutes. Mostrarà el component NoMatch si cap altra ruta coincideix.

Què és el router de reacció

React Router és una biblioteca d'encaminament per a aplicacions React. Permet als desenvolupadors crear rutes i components que es poden utilitzar per navegar entre diferents pàgines en una aplicació React. També ofereix funcions com ara la concordança de rutes dinàmiques, els paràmetres de consulta i l'estat de la ubicació. A més, proporciona suport per a la representació del costat del servidor i la divisió de codi.

Ruta alternativa de catch-all

Una ruta alternativa catch-all és una ruta a React Router que coincideix amb qualsevol camí que no hagi coincidit amb cap altra ruta. Aquest tipus de ruta s'utilitza sovint per crear una pàgina 404 o per representar un component per a tots els camins no coincidents. És important tenir en compte que la ruta alternativa catch-all sempre ha de ser l'última ruta de la llista de rutes, ja que coincidirà amb qualsevol camí i evitarà que altres rutes coincideixin.

Com definir correctament la ruta alternativa

Quan utilitzeu React Router, una ruta alternativa és una ruta que s'utilitza quan cap altra ruta coincideix amb l'URL sol·licitat. Normalment s'utilitza per redirigir els usuaris a una pàgina 404 o a una altra pàgina quan l'URL sol·licitat no existeix.

Per definir correctament una ruta alternativa a React Router, primer hauríeu de crear un component i embolcalleu-lo al voltant de les vostres rutes. Dins el component, hauríeu d'incloure les vostres rutes normals seguides per a component sense cap camí especificat. Aquesta serà la vostra ruta alternativa i capturarà qualsevol sol·licitud que no coincideixi amb cap de les vostres altres rutes. A continuació, podeu especificar què hauria de passar quan aquesta ruta coincideixi, com ara redirigir a una pàgina 404 o mostrar algun altre contingut.

Per què la ruta alternativa sempre es va activar

La ruta alternativa a React Router sempre s'activa quan un camí d'URL no coincideix amb cap de les rutes existents. Això pot passar quan un usuari introdueix manualment un URL incorrecte o si la lògica d'encaminament de l'aplicació no està configurada correctament. La ruta alternativa permet als desenvolupadors gestionar aquests escenaris amb gràcia i proporcionar comentaris a l'usuari, com ara una pàgina 404 o redirigir-los a la pàgina d'inici.

Articles Relacionats:

Deixa el teu comentari