如何使用react router v4调度位置更改操作

时间:2017-02-27 05:16:33

标签: reactjs react-router react-redux

我正在使用带有redux的react-router-4.0.0-beta.4,我正在尝试找出在路由更改上分派操作的最佳方法。我看到几个版本之前有here的API /事件挂钩。但我发现它现在已经消失了。试着做redux-router所做的现代等价物。

2 个答案:

答案 0 :(得分:2)

似乎发送操作的最佳方式是在组件的componentWillMount()componentDidMount()componentWillUnmount()方法中执行此操作。

IGNORE以下内容

onEnter道具。像这里comet-frontend

  

onEnter (nextState,replace,callback?)

     

即将输入路线时调用。它提供了下一个   路由器状态和重定向到另一个路径的功能。这将会   触发挂钩的路由实例。   https://github.com/ReactTraining/react-router/blob/master/docs/API.md#onenternextstate-replace-callback

但仍然存在onChange道具,完全按照你描述的那样做。也许告诉我们你的问题究竟是什么。因为你好像做错了什么。

答案 1 :(得分:0)

因此,您必须将主应用程序组件包装在withRouter中,并根据withRouter传递的道具中的道具更改做出反应,例如props.location.pathname

您可以在此处查看有关它如何运作的讨论https://github.com/ReactTraining/react-router/issues/4603