Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

207
Visualizações
Reaccionar: ruta privada que no navega

Estoy usando una ruta privada para navegar a una ruta después de que el usuario haya iniciado sesión. Sin embargo, tengo un problema. No sé por qué, pero mi enrutador no hace la transición a la ruta deseada. Aquí está mi código:

Rutas.js

 ... ... <PrivateRoute authenticated={localStorage.getItem("isAuthenticated")} path="/dashboard" component={DashBoard} exact ></PrivateRoute>

PrivateRoute.js

 const PrivateRoute = ({ component: Component, authenticated, ...rest }) => ( <Route {...rest} render={props => authenticated ? ( <Component {...rest} {...props} /> ) : ( <Redirect to={{ pathname: '/', state: { from: props.location } }} /> ) } /> ); export default PrivateRoute;

Iniciar sesión.js

 localStorage.setItem("isAuthenticated", true); this.props.history.push('/dashboard');

Cualquier ayuda sería apreciada. ¡Gracias!

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

¿Puedes intentarlo?

PrivateRoute.js

 const PrivateRoute = ({ component: Component, authenticated, ...rest }) => { console.log("authenticated",authenticated)//is it true or false? if (authenticated=="true") return ( <Route {...rest}> {" "} <Component {...rest} {...props} /> </Route> ); else return ( <Redirect to={{ pathname: "/", state: { from: props.location }, }} /> ); }; export default PrivateRoute;
about 4 years ago · Juan Pablo Isaza Relatório

0

Entonces, encontré la solución.

 authenticated={localStorage.getItem("isAuthenticated")}

lo anterior estaba invocando el método en el arranque de la aplicación debido a que tenía el valor de nulo almacenado en mi variable autenticada, así que lo cambié a la función de flecha y pasé el argumento sin invocarlo como se muestra a continuación:

 authenticated={() => localStorage.getItem("isAuthenticated")}
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda