将 Redux 与 Angular 2 一起使用时,应该执行ajax调用吗?
我看到两种可能性,首先是Service类处理ajax调用和其他异步操作,并将得到的Observable结果委托给store调度。这意味着存储只负责存储应用程序的字节状态,而Actions仅仅是将字节传输到存储的载体,而不执行任何逻辑,验证等。这是我的第一印象Redux - 只需创建一个基于的新状态指令和有效负载,它是在Redux域外执行的逻辑操作的结果。
然而,当我继续阅读Redux官方文档(异步操作和中间件)的高级章节时,我得到的印象是调度操作实际上可以执行逻辑,事实上所有程序逻辑应该作为结果执行派遣行动。
现在我对Reducers,Actions和store的使用方式非常困惑,以及它们与事件,本地服务调用,Web API调用,路由等的关系。
答案 0 :(得分:1)
您绝对可以将业务逻辑放入您的动作创建者中。据我所知,你想让你的减速器尽可能保持纯净,没有副作用和有限的逻辑。
良好链接:
this issue了解有关行动和减少行动如何协同工作的更多信息
this section of the Redux docs了解有关API调用和异步Redux的更多信息