如果在使用 React Router v4 时在 React 中填充了可选参数,是否有办法转到可选组件?
Is there a way to go to an optional components if the optional parameter is populated in React when using React Router v4?
我正在编写一个 React 应用程序,我正在尝试这样做,以便如果提供了可选的参数,即 id,那么它将转到另一个组件,否则转到用户名组件。有什么办法可以做到这一点,当我这样做时,它只有 returns 用户名组件。
<div>
<Switch>
<Route path ="/" exact component={Login}/>
<Route path ="/name/:username" component={Username}/>
<Route path ="/name/:username/:id?" component={Id}/>
</Switch>
</div>
尝试把Username和Id之间的路由位置倒过来,把/name/:username/:id?
放在前面。
编辑:
你最终不需要 ?
来做到这一点。
一个工作示例:https://stackblitz.com/edit/react-routing-example-lhcohu?file=App.js
我正在编写一个 React 应用程序,我正在尝试这样做,以便如果提供了可选的参数,即 id,那么它将转到另一个组件,否则转到用户名组件。有什么办法可以做到这一点,当我这样做时,它只有 returns 用户名组件。
<div>
<Switch>
<Route path ="/" exact component={Login}/>
<Route path ="/name/:username" component={Username}/>
<Route path ="/name/:username/:id?" component={Id}/>
</Switch>
</div>
尝试把Username和Id之间的路由位置倒过来,把/name/:username/:id?
放在前面。
编辑:
你最终不需要 ?
来做到这一点。
一个工作示例:https://stackblitz.com/edit/react-routing-example-lhcohu?file=App.js