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

391
Vistas
ReactJS: cómo redirigir al usuario según el tipo de usuario

Tengo tres tipos de usuario 'A', 'B', 'C' en mi proyecto de reacción. Estos valores se almacenan en el almacenamiento local. Cuando un usuario inicia sesión correctamente, quería redirigirlo a su ruta específica '/a','/b','/c'. .

Esto es lo que probé hasta ahora, pero no funciona correctamente

 const submit = async (e) => { e.preventDefault(); if (password.length < 2) return; if (email.length < 2) return; try { const response = await apiClient.auth.login({ username: email, password, }); props.set_token(response.data.token); props.set_user_data(response.data.user); props.set_user_status({ approved: response.data.user.approved, loggedIn: true, token: response.data.token, }); if (response.status === 200) { //ON LOGIN SUCCESSFULL if (type.user.user_type === "A") { <Redirect to="/A" />; } else if (type.user.user_type === "B") { <Redirect to="/B" />; } else if (type.user.user_type === "C"){ <Redirect to="/C" />; } else{ <Redirect to="/signin" />; } } } catch (err) { console.log(err); } };

¿Alguna ayuda? Gracias

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

0

Lo que necesita es React Router para lograr esto... Recurso para ayudarlo React Router

Intente reemplazar su bloque condicional con esto en su lugar

 if (response.status === 200) { //ON LOGIN SUCCESSFULL if (type.user.user_type) { <Redirect to={`/${type.user.user_type}`}/>; } else { <Redirect to="/signin" />; }
about 4 years ago · Juan Pablo Isaza Denunciar

0

Si está utilizando React Router v6, debe usar el enlace useNavigate:

 const navigate = useNavigate();

Y entonces:

 if (type.user.user_type === "A") { navigate('/A'); } else if (type.user.user_type === "B") { navigate('/B'); } else if (type.user.user_type === "C"){ navigate('/C'); }
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