0

我们知道,如果 Redux 操作触发了对服务器的API 调用(无论是在 Redux 中间件还是 Redux Thunk 中),从服务器接收应答需要时间。在这个等待阶段UI必须以某种方式向用户显示正在完成某些加载(例如显示 Spinner)。在 React 和 React native 中,处理这些常见情况的一个著名技巧是Redux 状态中的isLoading布尔标志,当然还有正在调度的加载操作。一旦准备好显示答案,这个布尔值将被切换,以便我可以更新 UI。

然而,在应用这个技巧多年之后,我得到的是一个充满错误和错误的应用程序以及一个带有大量冗余代码的超级脏代码。

我检查了所有的 React生命周期钩子,检查了调用钩子的顺序以及Redux 调度的过程。似乎 Redux 和 React 完全分开工作。(我知道一旦商店更新就会调用getDerivedStateFromProps,但这并不能解决我的问题)

我需要一种更好的方法来处理这些常见情况。我不知道我是否需要在我的应用程序的 Redux 部分进行修改,或者在 UI 中,或者......

4

0 回答 0