<导航链接 /> 不会触发@@router/LOCATION_CHANGE操作



我在单击反应路由器<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);

首次加载并按下浏览器的后退/前进按钮时,redux 记录器中的路由发生了变化:

action @@router/LOCATION_CHANGE // console.log

我到处寻找,无法确定我是否需要进行自定义操作或使用连接的路由器。

感谢帮助

显然,除了<ConnectedRouter />之外,我<Router />包裹我的<Switch />

如果你想将路由连接到 redux 存储并反映在 redux-logger 中更改的路由,你只需要像这样<ConnectedRouter />

<ConnectedRouter history={history}>
<Nav />
<Switch>
<Route path="/" exact component={Home} />
<Route path="/about-the-cause" exact component={About} />
<Redirect to="/" />
</Switch>
</ConnectedRouter>

相关内容

  • 没有找到相关文章

最新更新