Redux开发者为什么使用Middleware来处理异步,而不只是等待Promise解决?
Redux开发者为什么使用Middleware来处理异步,而不只是等待Promise解决?
这个问题已经有了答案:
我是Redux的新手,我看到很多人使用一些中间件来处理异步。
我的问题是,我可以这样做:
fetch(myAPI) .then(res => res.json()) .then(res => { dispatch({ type: 'MY_ASYNC_ACTION', res }) })
我可以等待承诺被解决,然后派发同步操作。
在Redux中使用中间件来处理异步的好处是什么?
我看了很多关于Redux的教程,没有一个等待承诺被解决,我错过了什么?
admin 更改状态以发布 2023年5月24日
使用 Redux 中间件来处理异步操作的好处是什么,而不仅仅是等待 Promise 解决呢?
将中间件视为您的操作和 reducers 之间的“中间人”。这可以让您具有执行异步操作(例如获取/其他 API 调用)的灵活性,而不会停止主线程(您的流程)。并向您的用户显示回退 UI,指示后台正在发生某些事情。
一个简单的使用案例:
您的用户可能希望在获取数据时做一些其他事情。如果没有中间件,您的用户可能会等待某些事情发生(直到您的获取数据解决),但没有任何指示正在发生什么。
有关更多详细信息,请查看 Redux 的异步流程和用于处理应用程序中的异步流程的Redux-Saga中间件。