为什么我不应该在 React Redux 中使用 toJS()? (mapStateToProps)

Why I shouldn't use toJS() in React Redux? (mapStateToProps)

我刚刚在 Redux 的文档上读到,我真的不应该将 Immutable 与 Redux 一起使用。 我只是无法理解这件事。为什么我不应该在 mapStateToProps 中使用 toJS()? 我的意思是 React 正在使用深度比较,而且我还没有遇到任何重新渲染问题。 (我只是登录渲染看看是否有任何泄漏。)

Why I shouldn't use toJS() in the mapStateToProps

你不应该在 mapStateToProps 中使用 toJS() 因为 toJS() returns 一个新的对象引用而且即使 connect 是纯的(即它确实浅比较),当对象嵌套时,它的 returns 可能是 假阴性 ,在这种情况下,您的组件将重新渲染,即 render函数将被调用,并且必须对 运行 差异算法做出反应,这将随着应用程序大小的变化而对性能产生影响。