react-melon/melon

[Table] 需要性能优化

Closed this issue · 1 comments

Table 需要 rerender 的性能优化

目前在 d011db0 添加了针对 Row 一级的性能优化。如果 row 的数据没有变化,那么此行不进行更新。

因此,新增了一个 API,table 现在可以设置属性 bool rowHasChanged(r1, r2) ,并且默认提供了最简单的判断:

function rowHasChanged(r1, r2) {
  return r1 !== r2;
}

在默认参数的条件下,在 datasource 中的每个元素,直接修改元素的属性并不会触发对应行的更新。可以使用 Immutability Helpers 来简化数据更新;或者依照具体的需求来设置 rowHasChanged