0
votes

React-Comment puis-je empêcher de retourner à la page de connexion après la connexion?

J'ai besoin d'empêcher ma page Web de revenir à la page de connexion après la connexion

J'essaie de faire un site Web à l'aide de réagir et d'exprimer. J'ai réussi à empêcher mon site Web de revenir à la page de connexion en appuyant sur le bouton Précédent à l'aide de l'historique. Méthodes de cycle de la poussée et de vie, mais je crains que tout le monde puisse toujours accéder à la page de connexion en modifiant URL sur ' http: // Localhost: 3000 / Connexion 'Après la connexion. Utilisation de History.Push ('/') n'a pas résolu le problème. Je serais reconnaissant si quelqu'un peut fournir des conseils sur cette question. Tout ce que je pouvais trouver sur ce numéro sur Stackoverflow était sur PHP, pas réagir.


1 commentaires

Nous ne pouvons pas vous aider sans voir de code. Pouvez-vous s'il vous plaît poster un code d'exemple pertinent afin que nous puissions vous aider?


3 Réponses :


1
votes

Si je vous comprends correctement, vous souhaitez empêcher un authentifié d'accéder à la page de connexion car ils sont déjà authentifiés. Si tel est le cas, vous pouvez effectuer ce qui suit dans le composant de connexion.

componentDidMount() {
  if (this.props.authenticated) {
    // redirect the user
  }
}


0 commentaires

2
votes

Vous pouvez simplement affecter une variable au stockage local où vous avez enregistré votre jeton d'authentification. Ensuite, vous devez la mettre conditionnellement dans la méthode de cycle de vie ComposantDidMount Strong>, puis vous devez rediriger votre itinéraire souhaité. Vérifiez ci-dessous le code

componentDidMount() {
    const user = localStorage.getItem('authToken') // your saved token in localstorage
    if (user && user !== 'undefined') {            // check for not undefined
        this.props.history.push('/')               // now you can redirect your desired route
    }
}


0 commentaires

0
votes

Vous pouvez utiliser USEEFFECT STRAR> Crochet pour gérer ce problème.

Dans votre composant de la page de connexion: P>

useEffect(() => {
   let isAuth = localStorage.getItem('authToken')
   if(isAuth & isAuth !== 'undefined') {
      props.history.push('/')
   }
}, [])


0 commentaires