Redux 异步数据流

2021-09-16 10:06 更新

异步数据流

如果不使用 middleware 的话,Redux 的 store 只支持 同步数据流。而这也是 createStore() 所默认提供的创建方式。

你可以使用 applyMiddleware() 来增强 createStore()。这不是必须的,但它可以让你 以更简便的方式来描述异步的 action

redux-thunkredux-promise 这样支持异步的 middleware 都包装了 store 的 dispatch() 方法,以此来让你 dispatch 一些除了 action 以外的其他内容,例如:函数或者 Promise。你所使用的任何 middleware 都可以以自己的方式解释你 dispatch 的任何内容,并继续传递 actions 给下一个 middleware。比如,一个 Promise middleware 能够 Promise,然后针对每个 Promise 异步地 dispatch 一对 begin/end actions。

当 middleware 链中的最后一个 middleware dispatch action 时,这个 action 必须是一个普通对象。这是 同步式的 Redux 数据流 开始的地方(译注:这里应该是指,你可以使用任意多异步的 middleware 去做你想做的事情,但是需要使用普通对象作为最后一个被 dispatch 的 action ,来将处理流程带回同步方式)。

下一步

现在你已经学完 Redux 数据流的全部内容!可以查看 异步示例源码,或者继续阅读 集成 React Router

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号