我刚刚在Redux的文档中阅读过,我不应该在Redux中使用Immutable。 我无法理解这件事。为什么我不应该在mapStateToProps中使用toJS()? 我的意思是React正在使用Deep Compare,我还没有任何重新渲染问题。 (我只是登录渲染以查看是否有任何泄漏。)
答案 0 :(得分:3)
为什么我不应该在mapStateToProps中使用toJS()
你不应该在toJS()
中使用mapStateToProps
因为toJS()
会返回一个新的对象引用,即使connect
是纯粹的(即它进行浅层比较),当对象嵌套时,它可能会返回误判,在这种情况下,您的组件将重新渲染,即render
函数将被调用并且react将必须运行差异算法,随着应用程序的大小而产生性能影响。