如何解决React Router 随机将我的所有请求重定向到“/”'
我目前正在开发一个 MERN Stack 应用。昨天我的路线运行良好,但今天,无缘无故地不行。
当我登录时(所以当令牌变量存在时),我的所有请求都被重定向到“/”。
编辑:它适用于来自 react-router-dom 的 de Link 组件,但不适用于我在浏览器中输入 url 或刷新时。
import React from "react";
import {
browserRouter as Router,Route,Redirect,Switch,} from "react-router-dom";
import Auth from "./pages/Auth";
import Book from "./pages/Book";
import Dashboard from "./pages/Dashboard";
import { AuthContext } from "./shared/context/auth-context";
import { useAuth } from "./shared/hooks/auth-hook";
function App() {
const { token,login,logout,userId } = useAuth();
let routes;
if (token) {
routes = (
<Switch>
<Route path="/" exact>
<Dashboard />
</Route>
<Route path="/book/shop" exact>
<Book />
</Route>
<Redirect to="/" />
</Switch>
);
} else {
routes = (
<Switch>
<Route path="/auth">
<Auth />
</Route>
<Redirect to="/auth" />
</Switch>
);
}
return (
<AuthContext.Provider
value={{
isLoggedIn: !!token,token: token,userId: userId,login: login,logout: logout,}}
>
<Router>
<main>{routes}</main>
</Router>
</AuthContext.Provider>
);
}
export default App;
知道我遗漏了什么吗?因为我在控制台中没有错误。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。