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

242
Views
React Router Dom doesn't redirect me after signing in

I'm creating a basic login page right now and I'm new to react. So far the page redirects me successfully to the '/login' page since I'm not logged in. After I log in I get a console.log of 'Logged in as guest' which is what I want for now, however, I don't get redirected to the home page. Can someone help me with this?

The relevant code is after the return call but I left it all there for context

Many thanks!

import Intro from './components/Intro';
import SignIn from './components/SignIn';
import Home from './components/Home';
import { BrowserRouter as Router, Route, Routes, Navigate, useParams, useNavigate } from 'react-router-dom';
import './App.css';
import { useState, useEffect } from 'react';


function App() {

  const guestUser = {
    username: "guest",
    password: "guest",
  }

  const [user, setUser] = useState({username: "", password: ""})
  const [error, setError] = useState("");

  
  

  const Login = details => {
      console.log(details);
      if(details.username == guestUser.username && details.password == guestUser.password) {
        console.log("Logged in as guest");
        setUser({
          username: details.username,
          
        });
        
        
      } else {
        console.log("details do not match");
        setError("Details do not match.")

      }
  }

  const Logout = () => {
      console.log("logout");
  }



  return (

    <div className="App">
      
      <Router>
        <Routes>
          
          <Route path="/Login" element={<Intro Login={Login} Logout={Logout} error={error}/>} />
          <Route path="/Home" element={<Home user={user}/>}/>
          <Route path="" 
            element={user.username !== "" ? <Navigate to ="/Home" /> :
            <Navigate to ="/Login"/>}/>
          
          
          
      
      
          
        </Routes>

      </Router>
        
    </div>
     
 
    
  );
}

export default App;

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

In your login function, after successful login you are not navigating to your home page...

import Intro from './components/Intro';
import SignIn from './components/SignIn';
import Home from './components/Home';
import { BrowserRouter as Router, Route, Routes, Navigate, useParams, useNavigate } from 'react-router-dom';
import './App.css';
import { useState, useEffect } from 'react';

function App() {

  const guestUser = {
    username: "guest",
    password: "guest",
  }

  const [user, setUser] = useState({username: "", password: ""})
  const [error, setError] = useState("");

  const Login = details => {
      console.log(details);
      if(details.username == guestUser.username && details.password == guestUser.password) {
        console.log("Logged in as guest");
        setUser({
          username: details.username,
          
        });
 <Navigate to ="/Home"/>}/>
                
      } else {
        console.log("details do not match");
        setError("Details do not match.")

      }
  }
  const Logout = () => {
      console.log("logout");
  }
  return (
    <div className="App"> 
      <Router>
        <Routes>
          <Route path="/Login" element={<Intro Login={Login} Logout={Logout} error={error}/>} />
          <Route path="/Home" element={<Home user={user}/>}/>
          <Route path="" 
            element={user.username !== "" ? <Navigate to ="/Home" /> :
            <Navigate to ="/Login"/>}/>  
        </Routes>

      </Router>
        
    </div>
  );
}
export default App;

This will work

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