【发布时间】:2017-09-07 08:09:31
【问题描述】:
我将 React 与 Redux 和 thunk 一起使用。我想使用browserHistory.push,但不确定我应该在哪里调用这个函数。假设我们有一个组件,它有一个简单的按钮。单击按钮时,我想调用browserHistory.push 方法。我对 redux 的理解是,我应该调度一个动作 ({type: 'NAVIGATE'}) 并创建一个 thunk,我将在其中调用 browswerHistory.push 方法。组件只会请求导航,而 thunk 会实际处理请求。
但是,我听到了不同的意见,比如 Redux 中的操作应该只在更新商店时使用。如果您不修改商店,则无需调度操作。
这个问题的最佳解决方案是什么?
【问题讨论】:
-
你可以看看 react-router-redux (github.com/ReactTraining/react-router/tree/master/packages/…),它本质上就是你想要的。如果你还没有使用 react-router,那么你就不需要它了。不要过于复杂的东西!
-
我已经在使用
react-router,我想从代码重定向,而不是使用Link等。 -
@Tr1et,react-router-redux 已经不存在了。在github.com/ReactTraining/react-router/tree/master/packages
标签: reactjs react-redux