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
Sleek Plastic Computer
Beauty
2
Generic Bronze Towels
Clothing
3
Incredible Granite Chair
Home & Garden
4
Oriental Metal Pants
Electronics
5
Fantastic Ceramic Bacon
Sports
6
Luxurious Ceramic Gloves
Clothing
7
Gorgeous Steel Bacon
Home & Garden
8
Tasty Silk Fish
Electronics
9
Fresh Silk Shoes
Electronics
10
Practical Aluminum Mouse
Electronics
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}