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

178
Vistas
Impedir que el usuario vuelva al navegador si ya inició sesión (reaccionar)

Me gustaría actualizar la página actual (inicio) cuando el usuario intenta volver a través del navegador, después de iniciar sesión.

¿Cuál es la mejor manera de resolver esto? ¿Alguna sugerencia?

Estaba tratando de hacer algo como esto dentro de index.tsx:

 if (id) { const rollback = history.goBack(); if (rollback) { history.push('/'); } }

Obs: En este caso, '/' es mi página de inicio, y no puedo aplicar la lógica anterior porque "No se puede probar la veracidad de una expresión de tipo 'vacío'".

Lo siento por cualquier cosa, todavía soy nuevo en reaccionar y estoy tratando de aprender.

No sé si podría hacer algo dentro de mi enrutador, aquí está de todos modos:

 import React, { Suspense, lazy } from 'react'; import { Route, Router, Switch } from 'react-router-dom'; import history from '../utils/history'; import LoadingPage from '../components/organisms/LoadingPage'; const DownloadExams = lazy(() => import('../pages/private/DownloadExams')); const Home = lazy(() => import('../pages/private/Home')); const ProfileSelector = lazy(() => import('../pages/private/ProfileSelector')); const AppRoutes = () => { return ( <Router history={history}> <Suspense fallback={<LoadingPage />}> <Switch> <Route exact path={'/'} component={Home} /> <Route exact path={'/baixar-exames'} component={DownloadExams} /> <Route exact path={'/profile'} component={ProfileSelector} /> </Switch> </Suspense> </Router> ); }; export default AppRoutes;

¿Alguna sugerencia? ¡Gracias!

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

El tiempo de inicio de sesión del usuario puede almacenar un token o una flag y almacenarlo en localStorage . Después de eso, puede verificar si el inicio de sesión del usuario lo redirige a la página. También puede crear algo de HOC para el mismo.

Ejemplo :

 import React from "react"; import { Route, Redirect } from "react-router-dom"; export const ProtectedRoute = ({ component: Component, ...rest }) => { const isLoggedIn = localStorage.getItem("token"); return ( <Route {...rest} render={(props) => { if (isLoggedIn) { return <Component {...props} />; } else { return ( <Redirect to={{ pathname: "/", state: { from: props.location, }, }} /> ); } }} /> ); };

Ejemplo de uso:

<ProtectedRoute path="/home" exact component={Home} />

Esto redirigirá al usuario a /home después de iniciar sesión.

about 4 years ago · Juan Pablo Isaza 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