react-router v4 怎么让匹配不到子路由的跳转404?
之前用react-router v3 当设定主路由是/Home的时候,只要不设定参数,/Home/asd 都会匹配不到,跳转到404,但是升级v4以后 /Home主路由,不设定参数,不设定子路由,/Home/asd也会匹配到/Home 如果用严格模式exact,设定了的子路由又匹配不到了?那这下要怎么配置成v3那种模式?
这是主路由的配置
<HashRouter >
<div>
<Switch>
{/* 首页 */}
<Route path='/Home' component={Home} />
{/* 404页面 */}
<Route component={NotFound}/>
</Switch>
</div>
</HashRouter>
这是子路由的配置
<Switch>
<Route path='/Home/firstchild' component={HomeChildFirst} />
</Switch>
找到一个曲线救国的方法,子路由底下再加一个404页面的路由
<Switch>
<Route path='/Home/firstchild' component={HomeChildFirst} />
<Route component={NotFound}/>
</Switch>
但这样的话很麻烦,不能统一。
还有就是,主路由/Home,不写:prop
参数,匹配路由的时候,如果后面有东西比如 /Home/asddd,他会按asddd是参数处理,但是在Home页面拿不到这个参数。
react router v4
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
那么,请问作者解决这个问题了吗?在线等,急