Table
Table Props
Normal
Name | |||
---|---|---|---|
data 1 | data 2 | data 4 | |
data 1 | data 2 | data 4 | |
data 1 | data 2 | data 4 | |
data 1 | data 2 | data 4 |
html
<Table {headers} {data} {caption} {alternate} {borderless} {hideCaption} />
// to override the cell templates
<Table {headers} {data} {caption} {alternate} {borderless} {hideCaption}>
<svelte:fragment slot="header" let:header>
{#if header && header.value === 'Actions'}
<Button on:click={() => console.log(header)}>
{header.value}
</Button>
{:else}
{header.value}
{/if}
</svelte:fragment>
<svelte:fragment slot="cell" let:cell let:row let:header let:index let:rowIndex>
{#if header && header.value === 'Actions'}
<Button on:click={() => console.log(cell)}>
{cell.value}
</Button>
{:else if header && header.value === 'Name'}
<Link href='' on:click={() => console.log(rowIndex, row)}>
{cell.value}
</Link>
{:else}
{cell.value}
{/if}
</svelte:fragment>
</Table>
script
let caption = 'Tehble';
let headers: IHeader[] = [{
scope: 'col',
value: 'Name',
},{
scope: 'col',
value: 'Name',
},{
scope: 'col',
value: 'Email',
},{
span: { colspan: 2, rowspan: 1 },
scope: 'col',
value: 'Actions',
}];
let data: ICell[][] = [
[{ value: 'data 1' }, { value: 'data 2' }, { value: 'data 3' }, { value: 'data 4' }],
[{ value: 'data 1' }, { value: 'data 2' }, { value: 'data 3' }, { value: 'data 4' }],
[{ value: 'data 1' }, { value: 'data 2' }, { value: 'data 3' }, { value: 'data 4' }],
[{ value: 'data 1' }, { value: 'data 2' }, { value: 'data 3' }, { value: 'data 4' }],
];