Reactjs 多个路由器-相同路径
我是一个新的反应者,尝试做以下几点: 在我的系统中,用户有不同的角色(常规、经理、管理员)。 对于每个角色,我使用不同的路由器对象。 在AdminRouter和ManagerRouter中,我都希望有一个指向/dashboard的路径,但每个路径都指向不同的组件Reactjs 多个路由器-相同路径,reactjs,react-router,Reactjs,React Router,我是一个新的反应者,尝试做以下几点: 在我的系统中,用户有不同的角色(常规、经理、管理员)。 对于每个角色,我使用不同的路由器对象。 在AdminRouter和ManagerRouter中,我都希望有一个指向/dashboard的路径,但每个路径都指向不同的组件 <Router> <div> <Switch> <AdminRouter path="/dashboard" c
<Router>
<div>
<Switch>
<AdminRouter path="/dashboard" component={AdminDashboardPage}/>
<ManagerRouter path="/dashboard" component={ManagerDashboardPage} />
<Route component={NotFoundPage}/>
</Switch>
</div>
</Router>
是否可以添加一些逻辑来决定(基于用户角色)忽略某些路由器?例如,如果用户是管理员,路由器将跳过所有AdminRouter元素 您的路由器不能为两个不同的组件提供相同的路由,它将始终渲染第一个组件 您可以做的是制作一个包装器组件,它将决定渲染什么 例如:
<Router>
<div>
<Switch>
<Route exact path="/dashboard" component={DashboardWrapper}/>
<Route component={NotFoundPage}/>
</Switch>
</div>
</Router>
您的路由器不能为两个不同的组件提供相同的路由,它将始终渲染第一个组件 您可以做的是制作一个包装器组件,它将决定渲染什么 例如:
<Router>
<div>
<Switch>
<Route exact path="/dashboard" component={DashboardWrapper}/>
<Route component={NotFoundPage}/>
</Switch>
</div>
</Router>
您查看过可选参数了吗?您查看过可选参数了吗?