Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

216
Views
Cuando se agrega el encabezado, la ruta protegida no se procesa

Estoy haciendo una aplicación simple que tiene una ruta protegida.

El código va como:

 function App() { return ( <> <Router> <Header /> <Routes> <Route path="/" element={<Home />} /> <Route path="/protected" element={ <PrivateRoute> <ProtectedExample /> </PrivateRoute> } /> <Route path="/sign-in" element={<Login />} /> </Routes> </Router> </> ); }

La ruta privada es:

 import { Navigate } from "react-router-dom"; import { useAuthStatus } from "../hooks/useAuthStatus"; import Spinner from "./Spinner"; const PrivateRoute = ({ children }) => { const { loggedIn, checkingStatus } = useAuthStatus(); if (checkingStatus) { return <Spinner />; } return loggedIn ? children : <Navigate to="/sign-in" />; }; export default PrivateRoute;

Ruta Protegida

 import React from "react"; const ProtectedExample = () => { return <div>ProtectedExample</div>; }; export default ProtectedExample;

Encabezado.js

 import React from "react"; import { Container, Nav, Navbar } from "react-bootstrap"; import { Link } from "react-router-dom"; const Header = () => { return ( <Navbar bg="light" variant="light" fixed="top"> <Container> <Navbar.Brand> <Link to="/">Vivans</Link> </Navbar.Brand> <Nav className="me-auto"> <Link to="/sign-in" className="me-4"> Login </Link> <Link to="/protected">ProtectedRoute</Link> </Nav> </Container> </Navbar> ); }; export default Header;

Cuando elimino el componente de encabezado en App.js

La salida es: ingrese la descripción de la imagen aquí

Pero cuando agrego un componente de encabezado en App.js

La salida es: ingrese la descripción de la imagen aquí No devuelve ProtectedExample como se esperaba.

¿Por qué?

about 4 years ago · Santiago Trujillo
1 answers
Answer question

0

En realidad, podría estar renderizándolo. Tal vez sea invisible para nosotros debido al estilo CSS.

 <Navbar bg="light" variant="light" fixed="top">

En la línea anterior, le ha dado a la barra de navegación que se fixed en la parte superior. Entonces el ProtectedExample estaría detrás de la NavBar de navegación.

Consulte: https://developer.mozilla.org/en-US/docs/Web/CSS/position

Intenta cambiar tu componente de esta manera,

 const ProtectedExample = () => { return <div style="margin-top: 3em">ProtectedExample</div>; };

Esto podría traer el contenido hacia abajo para hacerlo visible.

about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!