Как использовать React Link глубоко внутри приложения, упакованного в маршрутизатор? - PullRequest
0 голосов
/ 06 марта 2019

На высоком уровне мое приложение структурировано так:

<Provider>
   <ConnectedRouter>
      <App>
         <PageContainer>
             <Page>
                <Link>

Проблема в том, что когда я пытаюсь запустить - я получаю сообщение об ошибке «Uncaught Invariant Violation: Вы не должны использовать Link вне маршрутизатора». Я попытался обернуть <Link> внутри другого маршрутизатора внутри <Page>, но это, кажется, создает другой экземпляр маршрутизатора, и навигация не регистрируется должным образом. Вероятно, потому что изначально история создается на верхнем уровне и проходит туда Маршрутизатор, а тот же самый объект истории не передается Маршрутизатору внутри Страницы.

Во-первых, я запутался, почему получаю ошибку - поскольку Link находится внутри маршрутизатора, хотя и не является прямым потомком.

Во-вторых, если мне абсолютно необходимо обернуть ссылку в маршрутизаторе, как я могу убедиться, что это точно такой же экземпляр маршрутизатора? Или это даже шаблон ОК - чтобы <ConnectedRouter> появлялось на разных уровнях приложения и несколько раз?

Помогите, пожалуйста!

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