Redux + React:避免在小变化时进行DOM比较

时间:2016-07-27 10:20:17

标签: javascript reactjs redux

这是我的组件架构(粗体相关组件):

  • 应用
    • 属性
      • 求值
      • 指挥官
      • StyleGrid
      • 数据网格

这是我合并的缩减器的一部分:

    • APPSTATE
      • isImageFocused(boolean)
    • ...

isImageFocused 更改时,以下图片的颜色会发生变化:

Evaluator component

图像是Evaluator组件的一部分。一切都按预期工作,但是,我注意到整个 Attributes 的组件子树被重新评估(阴影DOM比较,对吧?)这个小改动。据我了解,这意味着属性评估者 StyleGrid DataGrid 组件都被重新评估(即使没有重新涂漆)。

有没有办法避免对小变化进行重新评估?

我在问,因为当我使用mrdoob's stats.js tool运行应用时,我看到了性能损失。

我想过使用'shouldComponentUpdate',但这意味着每次我为 Evaluator 添加一个兄弟时,我都要告诉它在更新isImageFocused时不要更新。

我希望有一些像“silentProps”这样的东西可以让我通过组件树传递道具来结束叶子而不会导致大量的重新评估。有吗?

0 个答案:

没有答案