React Router Switch Redux Dispatch - PullRequest
       8

React Router Switch Redux Dispatch

0 голосов
/ 02 апреля 2019

У меня есть следующая инструкция switch, которая направляет пользователя на исправление компонента на основе ссылки, на которой он находится.

const Router = (props) => {
    switch(props.page) {
        case 'Equities' :
            this.props.pageName('Equities'); 
            this.props.pageURL('/Equities'); 
            return <Equities />;
        case 'Daily' : 
            return <Daily />;
        default :
            return ( <Redirect to="/Equities" /> )
    }
  }

const content = ({ match }) => {

    return (
        <div className="content">
            <Router page={match.params.type} />
        </div>
    );
}

const mapDispatchToProps = {
    pageURL,
    pageName
   };

export default connect(mapDispatchToProps)(content);

В 4-й строке выше я пытаюсь отправить действие в Redux для обновления имени страницы и URL-адреса в хранилище избыточных данных, в котором находится пользователь.Я получаю следующее сообщение об ошибке: enter image description here

Как я могу отправлять действия на основе страницы, на которой находится пользователь, поэтому я обновляю имя и URL-адрес для каждой страницы, которую посещает пользователь?

1 Ответ

0 голосов
/ 02 апреля 2019

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

Моя структура компонентов для приложения выглядит следующим образом: App ->Skeleton -> TopBar, Sidebar, Content

Итак, внутри компонента Content у меня есть переключатель, который отображает правильный контент для пользователя.Я пытался добавить эту функциональность в контент.Теперь я добавил в Skeleton, и он работает нормально и намного лучше, потому что мне не нужно добавлять сейчас 8 различных операторов в switch, говоря, что если это совпадает, то сделайте это.Теперь все, что у меня есть, это this.props.pageName(match.url); this.props.pageURL(match.params.type);, так что я записываю в редуксе, что пользователь включен, и все.

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