не запускает действие @@ router / LOCATION_CHANGE - PullRequest
0 голосов
/ 11 сентября 2018

Возникла проблема при нажатии на компонент реакции-маршрутизатора <NavLink />.В настоящее время при нажатии он переходит на правильную страницу, но в redux) не было выполнено никаких действий.

Обновляется объект истории.Я могу сказать, потому что назад / вперед работает, как ожидалось (действия стрельбы в redux-logger).

Это вырезанный код:

import React from 'react';
import { connect } from 'react-redux';
import { NavLink } from 'react-router-dom';

import NavMenu from './NavMenu';

const Nav = () => {

  return (
    <aside>
      <NavMenu />
      <NavFooter>
        <NavLink to={`/terms-and-conditions`}> // Not firing redux-logger actions, but navigates to the correct page
          Terms and conditions
        </NavLink>
      </NavFooter>
    </aside>
  );
};

export default connect()(Nav);

При первой загрузке и при нажатии браузера назад /Кнопка пересылки, есть изменение маршрута в логгере с резервированием:

action @@router/LOCATION_CHANGE // console.log

Я посмотрел везде и не могу узнать, нужно ли мне выполнить пользовательское действие или использовать подключенный реагирующий маршрутизатор.

Помощь оценена

1 Ответ

0 голосов
/ 13 сентября 2018

Очевидно, у меня было <Router />, обертывающее мои <Switch /> в дополнение к <ConnectedRouter />.

Если вы хотите соединить маршруты с хранилищем-резервом и отразить маршруты, изменяющиеся в программе-архиваторе, вам нужен только <ConnectedRouter />, например:

<ConnectedRouter history={history}>
    <Nav />
    <Switch>
       <Route path="/" exact component={Home} />
       <Route path="/about-the-cause" exact component={About} />
       <Redirect to="/" />
    </Switch>
</ConnectedRouter>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...