React-Router-Dom: Могу ли я вызвать useParams (), чтобы получить параметр пути за пределами Route? - PullRequest
0 голосов
/ 16 июня 2020

У меня простой JSX

<div>
  <Header />
  <Route exact path = "/:id" component={Home}/>
  <Route exact path = "/other/:id" component={Other}/>
</div>

В заголовке содержатся ссылки NavLinks, и я хочу, чтобы они включали ранее предоставленный идентификатор, например ...

const id = useParams().id;
const root = `/${id}`;
const Other = `/other${root}`;
<NavLink to={root} activeStyle={activeStyle} exact className="bg-link">Home</NavLink>
<NavLink to={other} activeStyle={activeStyle} exact className="bg-link">Other</NavLink>

Проблема заключается в useParams().id возвращает undefined, поскольку он не находится внутри самого маршрута. Могу ли я получить доступ к этой информации оттуда?

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...