【发布时间】:2017-02-15 12:40:45
【问题描述】:
在redux async actions in the docs 中,异步请求的状态作为属性isFetching 保存在各种对象的状态容器中:
{
selectedSubreddit: 'frontend',
postsBySubreddit: {
frontend: {
isFetching: true,
didInvalidate: false,
items: []
},
reactjs: {
isFetching: false,
...
这很好,但是我正在寻找构建我的应用程序,并且我正在寻找可以跨多个对象扩展的设计模式,这些对象必须保存在我的状态容器中并与我的 api 同步。所以我正在寻找 redux 社区采用的标准或库。
我发现Flux Standard Action 看起来很合理,但这更像是如何处理有效负载和错误的标准化,不是异步请求的状态。
是否有很多 redux 开发人员正在使用的库或模式?我认为可能会有类似{ success, isFetching, error }.
【问题讨论】:
-
我创建了一个函数,当被调用时会产生一个具有以下结构的 reducer:
{ inProgress, succeeded, failed, failureReason }。该函数将映射到“进行中”、“成功”和“失败”事件的操作名称作为参数。如果你愿意的话,有点像高阶减速器。便于重复使用。
标签: reactjs redux flux reactjs-flux