reactjs - 有没有办法将重点放在首先显示的路线上?
问题描述
<div className="app">
<Router>
{/* If there is no user, render the login screen else render the app components */}
{!user ? (
<LoginScreen/>
) : (!plan ? (
<ProfileScreen/>
) : (
<Switch>
<Route exact path = '/'>
<Watching/>
</Route>
<Route exact path ="/home">
<HomeScreen/>
</Route>
<Route exact path='/profile'>
<ProfileScreen/>
</Route>
<Route exact path='/ManageProfiles'>
<ManageProfiles/>
</Route>
</Switch>
))
}
</Router>
</div>
在 myApp.js
中,这些是我的路线组件。/profile
登录后,会立即显示带有路径的路由组件,而不是/home
. 有没有办法确保每次我登录时都会将我重定向到/home
?
解决方案
您可以使用 useNavigate 挂钩并通过在您的登录处理程序中使用它来重定向您的用户,如下所示:
//Inside your component
const navigate = useNavigate()
yourLoginHandler() {
...othercode
navigate("/home")
}
推荐阅读
- ios - 如何从父视图读取子视图的 State 属性并在子视图中的属性更改时更新父视图 - SwiftUI
- xml - 仅在 FileMaker 18 中从/到当前记录导出和导入日期
- angular - 我有每个项目都有 mat-spinner-button 的项目列表 我需要在项目上显示加载微调器 onClick 怎么做?
- sql-server - SQL Server 和空分区扫描
- webpack - 无法在 Vue 中加载 Emscripten 编译的 C++
- node.js - 无法访问车把部分中的对象属性
- javascript - 如何解决 mqtt 中的混合内容问题?
- jquery - 如何解决 Typescript 中的重复标识符问题?
- excel - 求累积几何平均值
- c# - 通过在具有 XmlText 属性的 Property 中传递 XmlElement 序列化