【发布时间】:2021-09-12 03:16:38
【问题描述】:
我需要定义一个采用可选参数“格式”的路由。最初我只定义了路线:
<FleetView path='/fleet/:format' /> 但每当我访问没有格式的 URL 时,例如。 localhost:3000/fleet 或 localhost:3000/fleet/ 会报错。我通过添加不带格式参数的额外冗余路由来修复它:<FleetView path='/fleet/' />。有效的代码复制如下:
const NotFound = (props) => {
return <Redirect to='/fleet' />;
}
...
<Router >
<Redirect noThrow from="/" to="/fleet" />
<FleetView path="/fleet/" />
<FleetView path="/fleet/:format" />
<NotFound default />
</Router>;
我的问题是是否有办法在没有冗余路由的情况下做到这一点,即使 :format 参数可选?
【问题讨论】: