猿问

在React Virtualized`Grid`中解释动态的top元素

我有一些使用React VirtualizedGrid元素的照片集。

我们设计了一个指示器,可以在照片上传过程中显示。这将动态隐藏和显示,并通过cellRangeRendererper docs进行渲染。

http://img.mukewang.com/60a62a430001f2b407970532.jpg

棘手的部分是让其余的Grid项遵守此新元素添加的额外高度。当前采用的方法是将该元素的高度添加到style.top中呈现的每个元素的高度中cellRenderer

const adjustedTopOffset = style.top + heightOfTopElement;

上面的计算是针对每个元素完成的。这样可以将所有元素正确地放置在适当的偏移处。但是,网格的高度不适应顶部偏移的重新计算。

结果是的底部Grid被调整后的顶部金额切除。

http://img2.mukewang.com/60a62a580001316907950158.jpg

如何正确考虑调整后的顶部偏移量?呼叫recomputeGridSize似乎没有做到。

是否cellRenderer以正确的方式调整顶部偏移量,以考虑额外的顶部元素?我将说明这不是固定元素,而是需要Grid像其他元素一样滚动的元素。


小唯快跑啊
浏览 260回答 1
1回答

呼唤远方

假设您的单元格高度是固定的,那么您应该可以使用prop覆盖默认height样式containerStyle,如下所示:let containerStyle;if (isTopElementVisible) {  containerStyle = {    height: rowHeight * rowCount + heightOfTopElement,    maxHeight: rowHeight * rowCount + heightOfTopElement,  };}
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答