1
resposta

Sempre redirecionado para

Olá, estou tendo um problema em minha aplicação react. Sempre estou sendo redirecionado para "/" quando atualizo a página, independente de onde eu esteja, se eu estiver na "/products" e atualizar a página eu vou para o "/".

minha app.js:

import { useEffect, useState } from "react";
import Sidebar from "./components/sidebar/Sidebar";
import Topbar from "./components/topbar/Topbar";
import "./App.css";
import Home from "./pages/home/Home";
import { BrowserRouter as Router, Switch } from "react-router-dom";
import UserList from "./pages/userList/UserList";
import User from "./pages/user/User";
import NewUser from "./pages/newUser/NewUser";
import ProductList from "./pages/productList/ProductList";
import Product from "./pages/product/Product";
import NewProduct from "./pages/newProduct/NewProduct";
import Login from "./pages/login/Login";
import { userRequest } from "./requestMethods";
import PrivateRoute from "./routes/privateRoutes";
import PublicRoute from "./routes/publicRoute";

function App() {
  const [admin, setAdmin] = useState(false)
  const [loading, setLoading] = useState(false)

  useEffect(() => {
    const verifyUser = async () => {
      try {

        setLoading(true)
        const res = await userRequest.get('/verify')
        setAdmin(res.data.isAdmins)
        setLoading(false)

      } catch (error) {
        console.log(error)
      }
    }
    verifyUser()
  }, [])

  return (
    <Router>

      <Switch>
        { loading === true ? (<h1>Loading...</h1>) : (
          <>
          <Topbar /> 
          <div className="container">
          <Sidebar />
          <PublicRoute admin={admin} restricted={true} component={Login} path="/login" exact />
          <PrivateRoute admin={admin} component={Home} path="/" exact />
          <PrivateRoute admin={admin} component={UserList} path="/users" exact />
          <PrivateRoute admin={admin} component={User} path="/user/:userId" exact />
          <PrivateRoute admin={admin} component={NewUser} path="/newUser" exact />
          <PrivateRoute admin={admin} component={ProductList} path="/products" exact />
          <PrivateRoute admin={admin} component={Product} path="/product/:productId" exact />
          <PrivateRoute admin={admin} component={NewProduct} path="/newproduct" exact />

          </div></>
      )}
        </Switch>
    </Router>
  );
}

export default App;
1 resposta
O post foi fechado por inatividade. Para continuar o assunto, recomendamos criar um novo tópico. Bons Estudos!