我在我的react redux应用程序的更新存储时遇到了问题。 如何使商店更新成为可能? 如您所知,状态的所有更新都是异步的,因此如果我作为状态更新的回调函数执行某些操作,则必须使用componentDidUpdate方法。但这些有时很复杂。我想通过使它们成为可靠的方法来实现这一点。有什么想法吗?
答案 0 :(得分:1)
reducer函数应该是纯粹的,因此异步逻辑不应该存在。
您可能感兴趣的中间件很少:
redux-thunk允许您拥有操作创建者,该操作创建者返回一个函数,该函数将来自商店的dispatch
和getState
注入到正常操作中,这意味着可以根据需要延迟调度。但它的力量有限。 (你可能不需要更多)
redux-saga使用生成器来解释数据方面的所有副作用和异步操作。它比thunk更强大,你可以做复杂的异步交互,例如,在多个动作之间竞争。但缺点是,您需要创建更多操作以及由操作依赖性导致的不可预测性。
据称,{p> redux-observable比传奇更复杂。它基于Rx可观察流,您可以使用类似于数组方法的map
flatMap
filter
操作操作流,但您可以使用更多。对我来说,它的界面看起来比传奇更好。有些人可能会反对理解Rx所需的学习曲线。