【发布时间】:2018-03-14 17:33:59
【问题描述】:
我正在使用 react、redux、redux-saga 和 react-router-redux。我正在寻找一种在异步调用成功后转换到新路由的“正确”方式。
例如,用户提交订单并被重定向到感谢页面。在幕后,我们
- 当前路线是
orders/new dispatch(submitOrder())-
submitOrder()saga 运行,异步网络调用 - api 返回成功,
SUBMIT_ORDER_SUCCESSaction 被调度
此时我想转换到orders/:orderId/complete。
在哪里/如何正确执行此操作?
使用OrderFormContainer.componentWillReceiveProps() 钩子是可能的,检查像nextProps.submitDidSucceed 这样的布尔值,然后调用一个转换动作——但这很脆弱,感觉根本上是错误的。
【问题讨论】:
标签: reactjs react-redux redux-form redux-saga react-router-redux