如果商店保持它们自己的状态并且在这样做时具有调用网络和数据存储服务的能力( ...in ),在这种情况下动作仅仅是哑巴消息传递者,
-或者-
...should存储是来自动作的不可变数据的哑巴接收者(动作是那些在外部源之间获取/发送数据的动作吗?在这种情况下,存储将充当视图模型,并将能够在根据动作提供给它们的不可变数据设置它们自己的状态之前聚合/过滤它们的数据。
在我看来,它应该是一个或另一个(而不是两者的混合)。如果是这样,为什么其中一个是首选/推荐的?
发布于 2015-06-05 13:35:11
gaeron的flux-react-router-demo有一个很好的“正确”方法的实用变体。
ActionCreator从外部API服务生成promise,然后将promise和三个操作常量传递给代理/扩展分派器中的dispatchAsync
函数。dispatchAsync
总是会分派第一个动作,例如'GET_EXTERNAL_DATA‘,一旦promise返回,它将发送'GET_EXTERNAL_DATA_SUCCESS’或'GET_EXTERNAL_DATA_ERROR‘。
发布于 2015-07-22 17:03:12
如果你想有一天拥有一个可以与你在Bret Victor著名的视频Inventing on Principle中看到的开发环境相媲美的开发环境,你应该使用哑巴存储,它只是一个数据结构中的操作/事件的投影,没有任何副作用。如果您的存储实际上是相同的全局不可变数据结构的成员,就像在Redux中一样,这也会有所帮助。
https://stackoverflow.com/questions/25630611
复制相似问题