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

时间:2018-05-21 11:50:42

标签: javascript reactjs redux react-redux immutable.js

我刚刚在Redux的文档中阅读过,我不应该在Redux中使用Immutable。 我无法理解这件事。为什么我不应该在mapStateToProps中使用toJS()? 我的意思是React正在使用Deep Compare,我还没有任何重新渲染问题。 (我只是登录渲染以查看是否有任何泄漏。)

1 个答案:

答案 0 :(得分:3)

  

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

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