gpt4 book ai didi

reactjs - React Router 不切换到非基本路由

转载 作者:行者123 更新时间:2023-12-02 16:33:11 25 4
gpt4 key购买 nike

我正在一个之前使用 Reach Router 的项目中设置 React Router。

之前,Reach 的路线如下所示:

import { Router } from '@reach/router';

...

<Router>
{anon ? <AnonHomepage /> : <Homepage />}
<Explore path="explore/:category" />
</Router>

然后,切换到 React Router,我的文件设置如下:

import { BrowserRouter, Switch, Route } from 'react-router-dom';

...

<BrowserRouter>
<Switch>
{anon ? (
<Route path="/" component={AnonHomepage} />
) : (
<Route path="/" component={Homepage} />
)}
<Route
path="/explore/:category"
component={Explore}
/>
</Switch>
</BrowserRouter>

但是,路由器只显示 / 路由中的 AnonHomepage 和/或主页,不再显示 /explore (或任何其他)路由。我究竟做错了什么?如何让它使用正确的组件而不是始终显示基本路由的组件?

最佳答案

您可以使用exact prop在路线上

import { BrowserRouter, Switch, Route } from 'react-router-dom';

...

<BrowserRouter>
<Switch>
{anon ? (
<Route exact path="/" component={AnonHomepage} />
) : (
<Route exact path="/" component={Homepage} />
)}
<Route
path="/explore/:category"
component={Explore}
/>
</Switch>
</BrowserRouter>

关于reactjs - React Router 不切换到非基本路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56943950/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com