Как перенаправить, если URL состоит из двух частей в REACT? - PullRequest
0 голосов
/ 11 апреля 2020

Поскольку я использую перенаправление изact-router-dom для обработки моих маршрутов в приложении реагирования, я

Скажите, что кто-то нажимает: example.com/privacy-policy оно перенаправляется на: example.com и также, если кто-то нажмет: example.com/privacy-policy/test' it is getting redirected to : example.com 'как избежать перенаправления для example.com/privacy-policy/test' but it should redirect for example.com / privacy-policy'

1 Ответ

0 голосов
/ 11 апреля 2020

Причина, по которой все ваши маршруты идут на example.com, заключается в том, что create-react-app использует --history-api-fallback option`. См. Документы.

Этот параметр включает поддержку откатов History API в webpack-dev-server, фактически запрашивая у сервера откат к индексу. html в случае, если запрошенный ресурс не может быть найден.

Поэтому вам необходимо использовать пакет react-router-dom, использовать компоненты BrowserRouter и Route и Switch и определить ваши маршруты.

    <Router>
      <Switch>
          <Route path='/' exact component={ExampleHomePage}></Route>
          <Route path='/privacy-policy' exact component={PrivacyPolicy}></Route>
          <Route path='/privacy-policy/test' component={PrivacyPolicy}></Route>
      </Switch>
    </Router>

Вы можете найти много примеров в Интернете. Например:

...