我们正在计划一个Electron应用程序,我们正在考虑Redux。该应用程序将具有巨大的状态,可能从数十个或数百个文件中读取数据。在进行一些研究以了解Redux时,我发现reducer方法必须永远不会改变状态,并且必须创建一个包含任何更改的新状态。如果应用程序的状态非常大,这将成为一个问题,因为现在我们需要深度复制状态中的所有内容(它将成为一堆嵌套对象),并且我们将占用双倍的用于保持状态一次的内存,则旧状态将被删除。这看起来并不理想。
Redux中有没有更好的方法来处理这个问题?
答案 0 :(得分:3)
你不应该深刻复制。事实上,我说深度复制与redux-way相反。
您大部分时间都会通过参考进行复制,这非常快。
如果您担心自己的州树太大,我建议您redux-ignore来解决问题。
我目前正在运行一款拥有200多台减速机的redux应用程序。即使在廉价的Android移动设备上,我还没有发现由于还原导致的瓶颈。