javascript - 在根问题上反应嵌套路由
问题描述
当我尝试在我的根路由上设置嵌套路由时,我遇到了问题。我有 3 条“主要”路线:
<Switch>
<Route path="/" component={Home} />
<Route path="/login" component={Login} />
<Route path="/logout" component={Logout} />
</Switch>
在我的Home
组件上,我有一个这样的嵌套路由器:
<div>
<Route path="/" render={() => <div>Home</div>} />
<Route path="/test" render={() => <div>Test Route</div>} />
</div>
Home 组件有一个侧边栏 HOC,其中包含链接。
<Sidebar>
<Link to="/">Home</Link>
<Link to="/test">Test</Link>
<Link to="/logout">Logout</Link>
</Sidebar>
当我在我的 Root 组件上并单击Test
链接时,嵌套路由器上的路由更改为正确的 Test 组件。每当我进入登录和/或注销路由时,它都会尝试在 Home 组件的嵌套路由器中显示该路由
知道出了什么问题吗?
编辑:我已经尝试过@Tholle 提供的示例。不幸的是,它仍然不能按照我想要的方式工作。请参阅我制作的此CodeSandBox以重现我的问题。
解决方案
推荐阅读
- javascript - 无法获取输入它的价值 JavaScript
- javascript - 在特殊字符之间拆分字符串
- android - Android:如何将 SmsManager.sendMultipartTextMessage 与图像一起使用
- javascript - 我在尝试使用 keydown 事件处理程序更改类中的变量时遇到问题
- sql-server - MS Access 转换/透视到带有分组的 SQL Server
- docker - Cognito Identity System.IO.InvalidDataException:无法确定协议。在 Elastic beanstalk 上的 docker 中运行时
- android-fragments - 带有 MVP 的 Android TabLayout 片段
- javascript - 动态导入的vue组件解析失败
- crashlytics - 带有 Crashlytics 错误的 Android Things
- javascript - 为什么 Sourceopen 事件侦听器在脚本末尾执行?