本快速指南将讨论在 TanStack Table 中检索和与表头组对象交互的不同方法。
表头组就是表头的“行”。不要被这个名字迷惑,它就是这么简单。绝大多数表格只有一行表头(一个表头组),但是如果您使用嵌套列定义列结构(如列组示例),则可以有多行表头(多个表头组)。
有多个 table 实例 API 可用于从表格实例中检索表头组。table.getHeaderGroups 是最常用的 API,但根据您使用的功能,您可能需要使用其他 API,例如,如果您正在使用列固定功能,则需要使用 table.get[Left/Center/Right]HeaderGroups。
表头组对象类似于行对象,但更简单,因为表头行中的内容不如正文行中的内容多。
默认情况下,表头组只有三个属性:
要渲染表头组中的表头单元格,只需遍历表头组对象中的 headers 数组即可。
<thead>
{table.getHeaderGroups().map(headerGroup => {
return (
<tr key={headerGroup.id}>
{headerGroup.headers.map(header => ( // 遍历 headerGroup headers 数组
<th key={header.id} colSpan={header.colSpan}>
{/* */}
</th>
))}
</tr>
)
})}
</thead>
<thead>
{table.getHeaderGroups().map(headerGroup => {
return (
<tr key={headerGroup.id}>
{headerGroup.headers.map(header => ( // 遍历 headerGroup headers 数组
<th key={header.id} colSpan={header.colSpan}>
{/* */}
</th>
))}
</tr>
)
})}
</thead>