Как обновить путь URL с помощью React router при использовании динамического содержимого?

Я пытаюсь выяснить, как получить URL-адрес моей страницы для обновления на основе навигации пользователя в моем приложении react. Я использую Redux и React Router.

когда пользователь приземляется на приложение, приложение загружает данные с сервера через AJAX. Допустим, это список животных:

dog
cat
fish
pig
cow

мой маршрутизатор структурирован так (упрощено до важной части):

<div>
  <Provider store={store}>
    <Router history={hashHistory}>
      <Route path="/animal/:currentAnimal" component={ConnectedEntityStack} />
    </Router>
  </Provider>
</div>

пользователь может провести влево и вправо, чтобы добраться до различных животных, или перейти к животному непосредственно на mywebsite.com/animal/dog.

в настоящее время у меня посадка непосредственно на животное работает.. И у меня есть swiping работа. однако URL-адрес не обновляется при изменении животных.

Как я получаю URL для обновления с помощью маршрутизатора react, когда «маршруты» являются динамическими значениями (А не жестко закодированными в маршрутизатор)?

1 ответ

  1. если вы используете react-router-redux, u может обновить url таким образом:

    import { push } from 'react-router-redux';
    
    pushUrl = (newUrl) => {
      const { dispatch } = this.props;
      dispatch(push(newUrl));
    }