首页 > 解决方案 > 为什么我不应该在 React Redux 中使用 toJS()?(mapStateToProps)

问题描述

我刚刚在 Redux 的文档上阅读了它,我不应该真正将 Immutable 与 Redux 一起使用。我就是想不通这件事。为什么我不应该在 mapStateToProps 中使用 toJS()?我的意思是 React 正在使用 Deep Compare,而且我还没有遇到任何重新渲染问题。(我只是登录渲染看看是否有任何泄漏。)

标签: javascriptreactjsreduxreact-reduximmutable.js

解决方案


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

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


推荐阅读