Редирект неавторизированного пользователя на страницу login?

Рейтинг: 0Ответов: 0Опубликовано: 30.03.2023

Главный файл app.js, я хочу проверять является ли пользователь авторизированным. Но не пойму почему не срабатывает, когда я жму logout, мене не перекидывает на страницу login, хотя логика прописана. Что я пропустил?

import {BrowserRouter, Routes, Route, Navigate} from "react-router-dom"
    import React, { useState, useEffect } from 'react';
    import Dashboard from "./pages/Dashboard";
    import HourlyRates from "./pages/HourlyRates";
    import ExtraRates from "./pages/ExtraRates";
    import Salary from "./pages/Salary";
    import Login from "./pages/Login";
    import Main from "./pages/Main";



function App() {

  const [loginStatus, setLoginStatus] = useState(false);

  useEffect(() => {
    const loggedInUser = localStorage.getItem('loginStatus');
    if (loggedInUser) {
      setLoginStatus(true);
    }else{
      setLoginStatus(false);
    }
  }, []);

  return (
    <div className="app">
      <BrowserRouter>
        <Routes>
        {loginStatus ? (  
          <>
          <Route path="/" element={<Login/>}/>
          <Route path="/login" element={<Login/>}/>
          <Route path="/dashboard" element={<Dashboard/>}/>
          <Route path="/hourlyRates" element={<HourlyRates/>}/>
          <Route path="/extraRates" element={<ExtraRates/>}/>
          <Route path="/salarySend" element={<Salary/>}/>
          </>): (
            <Route path="*" element={<Navigate to="/login" />} />
          )}
        </Routes>
      </BrowserRouter>


    </div>
  );
}

export default App;

Ответы

Ответов пока нет.