6

假设我有一些数据表,例如返回用户列表(带有详细信息)或日志记录列表的管理员报告列表。此信息是否属于 redux 存储,只有数据表需要此信息?或者,如果我正在绘制具有 5000 个节点的东西怎么办。这也属于 redux 单一应用程序状态吗?为什么或者为什么不?

如果这些项目不属于应用程序状态,那么我应该在没有 redux 的情况下将它们加载到本地组件状态吗?不过,类似地获取我所有的异步请求似乎很好。

4

2 回答 2

1

由于 redux 不关心数据(它实际上只是在调度操作时调用 reducer 函数,并用结果替换当前状态),所以那里不应该有任何性能问题。它将与您提供的 reducer 函数一样高效。

如果您想直接查看:https ://github.com/rackt/redux/blob/master/src/createStore.js#L115

你更有可能遇到 React 的性能问题,但即便如此,它在那个规模上也是值得怀疑的。您可能希望虚拟化您的表格,以便您不会渲染视图元素,但这是 ui 编程的常见问题。

于 2015-10-20T17:44:14.493 回答
0

是的,Redux 的方式是将所有客户端状态放在 Redux 存储中。请参阅Redux 的三个原则,特别是第一个:

单一事实来源

整个应用程序的状态存储在单个存储中的对象树中。

这使得创建通用应用程序变得容易,因为来自服务器的状态可以序列化并水合到客户端,而无需额外的编码工作。单个状态树还可以更轻松地调试或自省应用程序;它还使您能够将应用程序的状态保持在开发中,从而加快开发周期。如果您的所有状态都存储在单个树中,则某些传统上难以实现的功能(例如撤消/重做)可能会突然变得微不足道。

于 2016-02-24T18:55:05.807 回答