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

255
Vistas
React Router: especifique el componente principal para rutas no relacionadas

Tengo 3 páginas en mi aplicación React junto con las siguientes rutas:

  1. Acceso (/)
  2. Tablero (/tablero)
  3. Proyectos (/proyectos)

Me gustaría que las páginas Panel y Proyecto tuvieran un encabezado, pero la página de inicio de sesión no debería tener ningún encabezado.

Actualmente las rutas se ven así:

 <Router> <Route path="/" component={Login}> <Route path="/dashboard" component={Dashboard} /> <Route path="/projects" component={Projects} /> </Router>

Creé un componente llamado Shell que proporciona solo el encabezado. ¿Cómo configuro mi enrutador para que Shell sea el componente principal para Dashboard and Projects pero no para la página de inicio de Login ?

Editar 1

Me pregunto si es posible usar un padre sin ruta como este para representar el Shell alrededor de los componentes secundarios:

 <Router> <Route path="/" component={Login}> <Route component={Shell}> <Route path="/dashboard" component={Dashboard} /> <Route path="/projects" component={Projects} /> </Route> </Router>

Editar 2

¡Acabo de probar el cambio anterior y funciona! Leyendo los documentos, la path no es un accesorio requerido. Entonces, en el código anterior, <Route component={Shell}> es perfectamente legítimo.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Lo que tienes en Edit 1 es correcto.

 <Router> <Route component={Login}> <Route component={Shell}> <Route path="/dashboard" component={Dashboard} /> <Route path="/projects" component={Projects} /> </Route> </Router>

Y en su componente <Shell> , puede hacer:

 import Header from './Header'; ... render() { return ( <div id="shell"> <Header /> {this.props.children} </div> ); } ...
over 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