React Router 4 и точный путь с динамическим параметром - PullRequest
0 голосов
/ 04 марта 2019

У меня проблемы с отображением компонента на каждом пути, потому что React Router 4 не использует точный для этого маршрута (или так выглядит).

<Route path="/" exact component={Explore} />
<Route path="/about" component={About} />

// The one making problems
<Route
    path="/:username"
    exact={true}
    render={props => <Profile {...props} />}
/>

Поэтому, когда я перехожу к http://example.com/about, Мой профиль компонента все еще отображается.Я предполагаю, что проблема в маршруте, так как он ожидает параметр :username, и он идет сразу после / (root).Я делаю что-то неправильно?Я мог бы добавить другой маршрут для /:username, например, /profile/:username, но я бы хотел оставить его таким, какой он есть, если это возможно.

1 Ответ

0 голосов
/ 04 марта 2019

Предполагая, что вы не используете Switch.Switch решит вашу проблему, потому что он будет отображать только первый соответствующий путь.

<Switch>
  <Route path="/about" component={About}/>
  <Route path="/:username" render={props => <Profile {...props} />} />
  <Route path="/" component={Explore} />
  <Route component={NotFoundPage} />
</Switch>
...