RouterBrowser 不会在刷新时重定向到默认页面
Posted
技术标签:
【中文标题】RouterBrowser 不会在刷新时重定向到默认页面【英文标题】:RouterBrowser doesn't redirect to default page on refresh 【发布时间】:2021-10-22 14:58:49 【问题描述】:我有一个登录页面,我希望浏览器默认路由到该页面。我的代码是在第一次运行时这样做的(重定向到 http://localhost:3000/login),但是在我路由到不同的页面并点击刷新后,它不会重定向回登录页面,而是继续它所在的最后一个 URL。我做错了什么?
return (
<div>
<h1>Movies - Subscriptions Web Site</h1>
<br />
<Link to="/movies" style= textDecoration: "none" >
<input type="button" value="Movies" />" "
</Link>
<Link to="/subscriptions" style= textDecoration: "none" >
<input type="button" value="Subscriptions" />" "
</Link>
<Link to="/userManagement" style= textDecoration: "none" >
<input type="button" value="User Management" />" "
</Link>
<input type="button" value="Log Out" />
<Switch>
<Route exact path="/">
<Redirect to="/login" />
</Route>
<Route path="/login" component=LoginComp />
<Route path="/movies" component=MoviesComp />
<Route path="/subscriptions" component=SubscriptionsComp />
<Route path="/userManagement" component=ManageUsersComp />
</Switch>
</div>
);
【问题讨论】:
【参考方案1】:删除exact
属性和route
标签
<Redirect to="/login" />
【讨论】:
我在去掉exact和route标签直接写
<Redirect path="/" to="/login" />
【讨论】:
我在以上是关于RouterBrowser 不会在刷新时重定向到默认页面的主要内容,如果未能解决你的问题,请参考以下文章
如果用户登录 React 和 Typescript,则在刷新时重定向到仪表板
带有访客和身份验证中间件的 Nuxt 身份验证将经过身份验证的用户在刷新时重定向到错误的页面