1

有没有办法使用CellMeasurer具有最大列宽的反应虚拟化,然后使高度扩大?

例如,我可能在网格的第一列中有一个 id 字段。这永远不会变得太大,但我想根据最大值来调整它的大小。然后在第二列中,我有一个文本字段,我不太确定它有多大。如果事实证明我当前的所有数据集在第二列中都有一个小值,我想根据最大值调整大小。如果它碰巧有一些较大的文本(超过一定宽度),我想使用该最大宽度,然后扩展行的高度以容纳行文本。

从我在文档和代码中可以看到,不支持这种类型的功能。如果是这种情况,我认为我最好的方法是CellMeasurer使用稍微复杂一点的_measure函数来实现我自己的方法。这听起来像是正确的做法吗?

4

1 回答 1

2

您应该能够通过向渲染的单元格添加样式约束来做到这一点。CellMeasurer 只是测量浏览器报告的内容——而 CSS 控制浏览器的最大宽度。

React 也可能会冻结样式对象,因此请使用传播而不是直接修改:

style={{
  ...style,
 maxWidth: 300
}}
于 2017-03-03T16:18:56.513 回答