0
我使用immutable.js
来保持我的应用程序状态。它是由多重合成减速,这是不可改变的地图,如:保持较大的请求状态为
const initialState = new Map({
data: null,
page: 1,
...
});
所以,我有我需要获取的请求响应,保存的地方,得到的数据,并更新状态,每当一些网页上的变化。
现在的问题是 - 我在哪里保持原始请求响应在REDX?
比方说,我想保持它的状态。我尝试了以下方法:
case FETCH_RESPONSE:
return state.merge({
rawRequestResponse: action.response // very slow, deep conversion to Immutable
})
case FETCH_RESPONSE:
return state.set({
rawRequestResponse: action.response // also slow, it's converted to Immutable, though not deeply
})
case FETCH_RESPONSE:
return new Map({
rawRequestResponse: action.response, // just like above
...
})
但是它们都太慢了。什么是最好的方法来做到这一点?
是原始请求一个真正的需要你的状态的一部分?重新考虑它是否真的需要在Redux商店内生活。无论如何,它有多大?如果您正在处理大量集合,那么可以考虑在API中添加分页并在客户端上缓存集合实体。 – VanDanic