ERROR en ./src/App.js 30:41-47
exportar 'Switch' (importado como 'Switch') no se encontró en 'react-router-dom' (exportaciones posibles: BrowserRouter, HashRouter, Link, MemoryRouter, NavLink, Navigate, Outlet, Route, Router, Routes, UNSAFE_LocationContext, UNSAFE_NavigationContext, UNSAFE_RouteContext, createRoutesFromChildren, createSearchParams, generatePath, matchPath, matchRoutes, renderMatches, resolvePath, unstable_HistoryRouter, useHref, useInRouterContext, useLinkClickHandler, useLocation, useMatch, useNavigate, useNavigationType, useOutlet, useOutletContext, useParams, useResolvedPath, useRoutes, useSearchParams
En react-router-dom v6, "Cambiar" se reemplaza por rutas "Rutas". Necesitas actualizar la importación desde
import { Switch, Route } from "react-router-dom";a
import { Routes ,Route } from 'react-router-dom';Para obtener más información, puede visitar los documentos oficiales: react-router-dom-v6
Solución 1:
Para resolver, 'Switch' no se exporta desde el error 'react-router-dom' aquí, simplemente instale Switch. Y luego puedes usar Switch. El interruptor se reemplaza en la versión 6 de react-router-dom. Por lo tanto, debe instalar la versión 5 de react-router-dom. Ahora, su error debería estar resuelto.
Use rutas en lugar de Switch:
import { BrowserRouter, Routes, // Just Use Routes instead of "Switch" Route, } from "react-router-dom";Entonces puedes usar Así:
<BrowserRouter> <Routes> <Route exact path="/" element={<Home />}> <Home/> </Route> </Routes> </BrowserRouter>Solución 2:
Aquí solo instale el interruptor. Y luego puedes usar Switch. El interruptor se reemplaza en la versión 6 de react-router-dom. Por lo tanto, debe instalar la versión 5 de react-router-dom. Ahora, su error debería estar resuelto.
npm install react-router-dom@5Gracias