Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

149
Vistas
La salida del enrutador React no representa el diseño

Intentando representar el componente del panel dentro del diseño usando <Outlet /> pero al acceder a la ruta /admin/dashboard, el diseño no se está procesando. ¿Cómo arreglar esto?

Aplicación.js:

 export default function App() {
 return (
 <div className="App">
 <Router>
 <Routes>
 <Route exact path="/admin" element={<Layout />} />
 <Route exact path="/admin/dashboard" element={<Dashboard />} />
 </Routes>
 </Router>
 </div>
 );
}

Diseño.js:

 export default function Layout() {
 return (
 <Fragment>
 <div className="sb-nav-fixed">
 <Navbar />

 <div id="layoutSidenav">
 <div id="layoutSidenav_nav">
 <Sidebar />
 </div>

 <div id="layoutSidenav_content">
 <main>

 <Outlet />
 <Navigate from="admin" to="/admin/dashboard" />

 </main>
 <Footer />
 </div>
 </div>
 </div>
 </Fragment>
 );
}

Tablero.js:

 export default function Dashboard() {
 return <h1>Dashboard</h1>;
}
almost 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Las rutas de diseño deben tener realmente una ruta anidada para que pueda representar su element en el Outlet , no como rutas hermanas.

 export default function App() {
 return (
 <div className="App">
 <Router>
 <Routes>
 <Route path="/admin" element={<Layout />}>
 <Route path="dashboard" element={<Dashboard />} />
 </Route>
 </Routes>
 </Router>
 </div>
 );
}

Además, si no desea representar nada en "/admin" , elimine la redirección de Layout , elimine la path de acceso de la ruta de diseño y actualice la path del dashbard.

Ejemplo:

 export default function Layout() {
 return (
 <Fragment>
 <div className="sb-nav-fixed">
 <Navbar />

 <div id="layoutSidenav">
 <div id="layoutSidenav_nav">
 <Sidebar />
 </div>

 <div id="layoutSidenav_content">
 <main>
 <Outlet /> // <-- no redirect now
 </main>
 <Footer />
 </div>
 </div>
 </div>
 </Fragment>
 );
}

...

 export default function App() {
 return (
 <div className="App">
 <Router>
 <Routes>
 <Route element={<Layout />}>
 <Route path="/admin/dashboard" element={<Dashboard />} />
 </Route>
 <Route path="*" element={<Navigate to="/admin/dashboard" replace />} />
 </Routes>
 </Router>
 </div>
 );
}

Si el plan es representar otras rutas en la ruta de diseño, mantenga las rutas como están y mueva la redirección a una ruta de índice.

 export default function App() {
 return (
 <div className="App">
 <Router>
 <Routes>
 <Route path="/admin" element={<Layout />}>
 <Route index element={<Navigate to="dashboard" replace />} />
 <Route path="dashboard" element={<Dashboard />} />
 ... other admin routes ...
 </Route>
 </Routes>
 </Router>
 </div>
 );
}
almost 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda