javascript - 为什么我不应该在 React Redux 中使用 toJS()?(mapStateToProps)
问题描述
我刚刚在 Redux 的文档上阅读了它,我不应该真正将 Immutable 与 Redux 一起使用。我就是想不通这件事。为什么我不应该在 mapStateToProps 中使用 toJS()?我的意思是 React 正在使用 Deep Compare,而且我还没有遇到任何重新渲染问题。(我只是登录渲染看看是否有任何泄漏。)
解决方案
为什么我不应该在 mapStateToProps 中使用 toJS()
你不应该使用toJS()
inmapStateToProps
因为toJS()
返回一个新的对象引用,即使connect
是纯的(即它进行浅比较),它可能会在对象嵌套时返回一个假阴性,在这种情况下你的组件将重新渲染即该render
函数将被调用并且反应必须运行差异算法,这将随着您的应用程序大小的变化而产生性能影响。
推荐阅读
- python - 使用子进程库:错误:无法识别的参数
- c++ - “不能从 'std::ofstream {aka std::basic_ofstream
}' to bool" 错误作为回报 - laravel - 无法更新第一次创建以外的其他表行
- solr - 索引多个文档
- javascript - 用 PHP 语句填充元素的 innerHTML 的 JavaScript 函数不起作用
- html - 预填充界面弹出框
- c# - EF 存储上下文中的虚拟/可覆盖属性功能是否以相同的方式存在于域层中?
- r - 情感者 0 而不是 NA
- python - 如何计算垂直(房屋)墙壁上的太阳辐射?
- loops - 无法读取数字引脚的状态