No sé por qué recibo este error y no puedo encontrar una respuesta en ningún lado. Desinstalé el paquete react-router-dom y lo reinstalé, pero continúa diciéndome que el módulo de conmutación no se exporta desde react-router-dom. Aquí está mi código.
El error que estoy recibiendo:
Intento de error de importación: 'Switch' no se exporta desde 'react-router-dom'.
import React from 'react'; import './App.css'; import NavBar from './components/navbar.js'; import Footer from './components/footer.js'; import Home from './components/pages/homepage/home.js'; import { BrowserRouter as Router, Switch, Route, Link } from 'react-router-dom'; function App() { return ( <Router> <div className="app-container"> <NavBar /> <Switch> <Route path="/home" component={Home} /> </Switch> <Footer /> </div> </Router> ); } export default App;En react-router-dom v6, "Cambiar" se reemplaza por rutas "Rutas". Necesitas actualizar la importación desde
import { Switch, Route } from "react-router-dom";para
import { Routes ,Route } from 'react-router-dom';También debe actualizar la declaración de ruta de
<Route path="/" component={Home} />para
<Route path='/welcome' element={<Home/>} />En react-router-dom , tampoco necesita usar el valor exacto en la declaración de ruta.
Para obtener más información, puede visitar la documentación oficial: actualizar a react-router-dom v6
Si está utilizando react-router-dom v6, parece que Switch ha sido reemplazado por Routes
También enfrenté el mismo problema y busqué mucho en Internet, pero no obtuve ninguna respuesta de acuerdo con mi pregunta.
Así que desinstalé la versión 6 de react-router-dom:
npm uninstall react-router-domE instaló la versión 5.2.0 de react-router-dom:
npm install react-router-dom@5.2.0