Передача данных программно при изменении маршрута с React router 4

Требование - передать определенные данные компоненту, который будет отображаться при изменении маршрута (программно). В настоящее время я использую push от 'Reaction-router-redux' без передачи каких-либо данных.

Итак, я перехожу к /Animal и передаю информацию о конкретных животных в данных, которые я хочу, чтобы URl показывал http://localhost/Animal

Я использую React Router 4.

import {push} from 'react-router-redux';

export function changeRoute(newRoute, data) {
    return (dispatch) => dispatch(push(newroute));
}

Как этого достичь?

1 ответ

Вы должны передать данные, используя действие со своей страницы, и получить их, используя соответствующий редуктор со страницы "Животное".

animalActions.setData(data);
animalActions.changeRoute(newRoute);

В на странице животных,

mapStateToProps =(state)=>{
    return{
     animalData:animalReducer.data
          }
}

Затем вы можете получить доступ к данным с помощью реквизита.

Другие вопросы по тегам