Column visibility
Control and toggle the visibility of table columns for a more flexible user experience.
Example
Id
Name
Category
Price Retail
Id
Name
Category
1
Electronic Concrete Cheese
Clothing
2
Small Steel Sausages
Beauty
3
Licensed Silk Table
Beauty
4
Tasty Marble Fish
Sports
5
Soft Concrete Pants
Home & Garden
6
Luxurious Ceramic Pizza
Home & Garden
7
Bespoke Aluminum Salad
Home & Garden
8
Handmade Wooden Hat
Sports
9
Modern Plastic Pants
Clothing
10
Modern Plastic Fish
Sports
Per page:
Page 1 of 100
Showing
1
to
10
of 1000 rows
[
{
"columnId": "id",
"visible": true,
"hideable": true
},
{
"columnId": "name",
"visible": true,
"hideable": false
},
{
"columnId": "category",
"visible": true,
"hideable": true
},
{
"columnId": "price.retail",
"visible": false,
"hideable": true
}
]
{#each datagrid.columns.getLeafColumns() as column}
{
datagrid.handlers.column.toggleColumnVisibility(column.columnId);
}}
/>
{column.header}
{/each}
{#each datagrid.columns.getLeafColumns() as column}
{@render LeafHeader(column)}
{/each}
{#each datagrid.rows.getPaginatedRows() as row}
{#each datagrid.columns.getLeafColumns() as column}
{#if column.isVisible()}
{#if !row.isGroupRow()}
{/each}
{getCellContent(column, row.original)}
{:else}{/if}
{/if}
{/each}
{JSON.stringify(
datagrid.columns.getLeafColumns().map((c) => {
return {
columnId: c.columnId,
visible: c.state.visible,
hideable: c.options.hideable
};
}),
null,
2
)}
{column.header}