为管理区域配置 react-router-dom 的问题
Posted
技术标签:
【中文标题】为管理区域配置 react-router-dom 的问题【英文标题】:problem configuring react-router-dom for admin area 【发布时间】:2020-01-23 12:52:59 【问题描述】:我有一个带登录的客户区,并且登录有一个不同的模板仪表板。
完成后我已经有一个渲染错误:“失败的道具类型:不支持以下属性:location
,computedMatch
。请删除它们
但是他还是渲染正常”。现在我的问题来了,我想添加一个行政区域
与另一个模板。但是我不能。
所以我有一个组件,在这个组件中我检查客户端是否登录,如果没有,我会重定向到 登录页面。在我的其他管理区域组件中,我不使用它,但我仍然被重定向到客户端登录屏幕。
<Router>
<Switch>
/* area client */
<Route component=Login path='/login' />
<MuiThemeProvider theme=theme>
<Layout>
<Route exact path='/' component=Dashboard />
...
</Layout>
</MuiThemeProvider>
/* area admin */
<MuiThemeProvider theme=theme>
<>
<Route path='/admin/login' component=LoginAadmin />
<Route path='/admin' component=Admin />
</>
</MuiThemeProvider>
</Switch>
有人可以帮我修复这些路线吗?
【问题讨论】:
在每条路径中准确添加并检查 我也试过了,但它一直在渲染仪表板并重定向到客户端登录 【参考方案1】:我通过以下帖子设法解决了:Multiple Nested Routes in react-router-dom v4
来自@Igor Stetsiura 是这样的:
render()
return (
<MuiThemeProvider theme=theme>
<Switch>
<Route path='/admin/login' component=LoginAadmin />
<Route path='/login' component=Login />
<Route path='/admin/' component=( match ) =>
<LayoutAdmin>
<Route exact path='/admin' component=Admin />
</LayoutAdmin>
/>
<Route path='/' component=( match ) =>
<Layout>
<Route exact path='/' component=Dashboard />
...
</Layout>
/>
</Switch>
</MuiThemeProvider>
);
【讨论】:
以上是关于为管理区域配置 react-router-dom 的问题的主要内容,如果未能解决你的问题,请参考以下文章
通过一个用户管理实例学习react-router-dom知识