Der @tanstack/lit-table Adapter ist ein Wrapper um die Kern-Tabellenlogik. Ein Großteil seiner Aufgabe besteht darin, den Zustand auf "lit"-Art zu verwalten, Typen bereitzustellen und die Rendering-Implementierung von Zell-/Kopf-/Fußzeilenvorlagen zu übernehmen.
@tanstack/lit-table exportiert alle APIs von @tanstack/table-core und die folgenden
Ist ein reaktiver Controller, der eine table API bereitstellt, die ein options Objekt entgegennimmt und eine Tabelleninstanz zurückgibt.
import { TableController } from '@tanstack/lit-table'
@customElement('my-table-element')
class MyTableElement extends LitElement {
private tableController = new TableController<Person>(this)
protected render() {
const table = this.tableController.table(options)
// ...render your table
}
}
import { TableController } from '@tanstack/lit-table'
@customElement('my-table-element')
class MyTableElement extends LitElement {
private tableController = new TableController<Person>(this)
protected render() {
const table = this.tableController.table(options)
// ...render your table
}
}
Eine Hilfsfunktion zum Rendern von Zell-/Kopf-/Fußzeilenvorlagen mit dynamischen Werten.
Beispiel
import { flexRender } from '@tanstack/lit-table'
//...
return html`
<tbody>
${table
.getRowModel()
.rows.slice(0, 10)
.map(
row => html`
<tr>
${row
.getVisibleCells()
.map(
cell => html`
<td>
${flexRender(
cell.column.columnDef.cell,
cell.getContext()
)}
</td>
`
)}
</tr>
`
)}
</tbody>
`
import { flexRender } from '@tanstack/lit-table'
//...
return html`
<tbody>
${table
.getRowModel()
.rows.slice(0, 10)
.map(
row => html`
<tr>
${row
.getVisibleCells()
.map(
cell => html`
<td>
${flexRender(
cell.column.columnDef.cell,
cell.getContext()
)}
</td>
`
)}
</tr>
`
)}
</tbody>
`
Ihre wöchentliche Dosis JavaScript-Nachrichten. Jeden Montag kostenlos an über 100.000 Entwickler geliefert.