这个问题可能被认为是“基于意见”,但我只是在这里寻找灵感,所以这里是:
在我的应用程序中,我从服务器请求数据。这些数据不是列表或任何东西,它基本上只是一堆键值对,然后应该显示给用户。这里描述了类似的用例 我应该将搜索结果存储在 redux 存储中吗?
现在的问题是:如何将这些数据存储在 redux-store 中。它有自己的减速机吗?或者我是否将其存储在某种本身基于键值的 AppState-Store 中?
我搜索了几个博客,但它们只描述了“待办事项列表”的典型用例,这不适用于我的情况。最后我只有一个Reducer-Case“SET_NEW_RESULTS_FROM_SERVER”,这有点可疑。
您应该对整个请求生命周期进行建模:
REQUEST_RESULTS_FROM_SERVER
REQUEST_RESULTS_FROM_SERVER_SUCCESS
REQUEST_RESULTS_FROM_SERVER_FAILURE
.为什么?加载指示器、向用户显示的错误消息以及其他原因。
存储区使用类似
null
的内容进行初始化(因此您的视图可以在获取任何内容之前呈现),并且当响应包含有效数据时,您将其保存在那里(“一堆键值对”听起来像是一个普通对象我)。
你的数据不一定需要自己的reducer。当然取决于您的应用,我们不知道。
此外,当您在 redux 中通过 ajax 获取数据时,reducer 通常需要跟踪:
REQUEST_RESULTS_FROM_SERVER_FAILURE
示例:
{
result: null,
error: null,
isLoading: false
}