我是Redux的新手,我已经看到很多人使用一些中间件来处理异步。
我的问题是,我可以这样做:
fetch(myAPI)
.then(res => res.json())
.then(res => {
dispatch({
type: 'MY_ASYNC_ACTION',
res
})
})
我可以等待解决的承诺,然后派遣我的同步动作。
使用中间件在Redux中处理异步,而不仅仅是等待诺言解决?
我看过很多关于redux的教程,它们都没有等待解决的承诺,我想念什么?
使用中间件在Redux中处理异步,而不仅仅是等待诺言解决?
将中间件视为您的动作和还原器之间的中间人。这可以使您在不停止主线程(您的流程(的情况下执行异步操作(例如获取/其他API调用(的灵活性。并向您的用户展示后备UI,以表明背景中正在发生某些事情。
一个简单的用例:您的用户可能希望查看一些数据,并在获取其他数据时进行其他操作。没有中间件,您的用户可能会等待某些事情发生(直到您的提取解决(,但没有任何指标。
检查redux async流以获取更多详细信息和用于处理应用程序中的异步流的Redux-Saga中间件。