Reactjs React路由器中有多个可能的精确路径?
我正在使用带有Switch语句的React路由器。有没有办法让我有多条精确路径 在本例中,id希望在路径为“/”或“/显示”时加载表组件,但不希望加载任何其他路径Reactjs React路由器中有多个可能的精确路径?,reactjs,react-router-v4,Reactjs,React Router V4,我正在使用带有Switch语句的React路由器。有没有办法让我有多条精确路径 在本例中,id希望在路径为“/”或“/显示”时加载表组件,但不希望加载任何其他路径 <BrowserRouter> <Switch> <Route exact path="/" render={()=>{ return <Table shows={this.state.shows} /> }}/&g
<BrowserRouter>
<Switch>
<Route exact path="/" render={()=>{
return <Table shows={this.state.shows} />
}}/>
<Route exact path="/show/*" component={Show} />
<Route component={FourOhFour} />
</Switch>
</BrowserRouter>
{
返回
}}/>
您可以在路线中使用路径数组
<BrowserRouter>
<Switch>
<Route exact path='/(|show)' render={()=>{
return <Table shows={this.state.shows} />
}}/>
<Route exact path="/show/*" component={Show} />
<Route component={FourOhFour} />
</Switch>
</BrowserRouter>
{
返回
}}/>
编辑:更新代码以处理警告。我相信您希望这样做的方式是。将
路线直接移动到要加载的组件中。因此,我认为观点应该发生轻微的转变。您可以将
添加到您知道将使用/
或/show
加载的组件中,而不是说此处不显示
简单地使用相同的组件道具添加多个
组件就够了吗
@ReiDien是的,但以这种方式重复我自己的话会感觉很混乱。你可以使用映射功能。这可以工作,但我在控制台中收到一个错误:警告:失败的道具类型:无效的道具路径类型数组提供给路由,预期为字符串。现在更新代码以进行修复。但我认为他们即将在没有警告的情况下允许阵列。检查