VirtualItem (虚拟项)

VirtualItem 对象表示虚拟器返回的单个项。它包含在虚拟器的 scrollElement 内的坐标空间中渲染该项所需的信息以及其他有用的属性/函数。

tsx
export interface VirtualItem {
  key: string | number | bigint
  index: number
  start: number
  end: number
  size: number
}
export interface VirtualItem {
  key: string | number | bigint
  index: number
  start: number
  end: number
  size: number
}

每个 VirtualItem 对象上都提供以下属性和方法:

key

tsx
key: string | number | bigint
key: string | number | bigint

项的唯一键。默认情况下,这是项索引,但应通过 getItemKey Virtualizer 选项进行配置。

index

tsx
index: number
index: number

项的索引。

start

tsx
start: number
start: number

项的起始像素偏移量。这通常映射到 CSS 属性或变换,如 top/lefttranslateX/translateY

end

tsx
end: number
end: number

项的结束像素偏移量。此值对于大多数布局不是必需的,但可能很有用,因此我们仍然提供了它。

size

tsx
size: number
size: number

项的大小。这通常映射到 CSS 属性,如 width/height。在使用 VirtualItem.measureElement 方法测量项之前,这将是从 estimateSize 虚拟器选项返回的估计大小。在测量项之后(如果你选择测量它),此值将是由 measureElement 虚拟器选项返回的数字(默认情况下,该选项配置为使用 getBoundingClientRect() 测量元素)。

lane

tsx
lane: number
lane: number

项的通道索引。在常规列表中,它将始终设置为 0,但对于瀑布流布局(有关更多详细信息,请参见可变示例)非常有用。