异步Action和中间件
2019-08-18 本文已影响0人
钢笔先生
Time: 2019-08-18
之前学到的都是同步action
,分发action
会同步修改store
,以及同步触发UI更新。
Redux异步请求
![](https://img.haomeiwen.com/i3280225/9fcc81cbf7554f92.png)
这里的API常见的有发送Ajax请求获取数据。
点击View组件分发了某种Action,这个Action可以被中间件捕获,比如Ajax请求被中间件捕获,这个不是直接发送到Reducer,而是先交调用API,再根据API的返回结果发送不同的Action,比如成功,失败等对应的Action。
也就是说,中间件会在Action和修改Store之间做一层过滤。
这里说异步Action,实际上Action并没有什么特殊的地方,只是整体上完成了一次异步的Action到Store更新的处理过程,这是一种设计模式。
换句话说,异步Action是多个同步Action的组合使用,单个Action仍是同步Action。
这里会用到redux-thunk
包。
Redux中间件 | Middleware
完成两种功能:
- 截获action
- 发出action
END.