@ommaralquisi/ng-x-table
v0.0.3
Published
* `npm install --save ngx-table` * Import `NgxTableModule` into module * import import `ITableConfig`, `IColumns`, `ISorting`, `IFiltering` into the component
Downloads
1
Readme
Ngx-TABLE
Installation
npm install --save ngx-table
- Import
NgxTableModule
into module - import import
ITableConfig
,IColumns
,ISorting
,IFiltering
into the component
Usage
Usage without with template
<ngx-table
[tableData]="data"
[columns]="columns"
[config]="config"
(tableChange)="tableChange($event)">
</ngx-table>
[tableData]
accept an array of data[columns]
accept an array ofIColumns
JSONs.IColumns
interface has the following property.title: string
title of the table column.name: string
the property name to display.sorting: boolean
whether the column should be sortable or not.sort: string
(optional) initial column sorting ‘asc’ or ‘desc’.filter: boolen
(optional) display filter on top the column.pipe: string
(optional) accept a pipe to be applied the column data.
[config]
accept a config JSON Object of typeITableConfig
ITableConfig
interface had the following propertiedtotal: number
total length of the data.itemPerPage: number
(10, 25, 50, or 100) how many item should the table display.currentPage: number
the current page the table displaying.
(tableChange)
accept a function withITableConfig
parameter. It will fires when the table changes, such changes are:Column sorting.
Column filtering.
Page changed.
Number of item per page changes.
Usage with template
You can pass a template to ngx-table directive which will render the cells of the table
<ngx-table
[tableData]="data"
[columns]="columns"
[config]="config"
(tableChange)="tableChange($event)">
<ng-template #rows let-item="dataRow" let-i="index">
<td>{{item.id }}</td>
<td>{{item.name }}</td>
<td>{{item.email }}</td>
<td>{{item.age}}</td>
<td
style='cursor: pointer;'
title="open console to see message"
(click)="component.logMe(item.phone)">{{item.phone}}
</td>
<td>
<a href="https://en.wikipedia.org/wiki/{{item.city}}">
{{item.city}}
</a>
</td>
<td>{{item.rank}}</td>
<td>{{item.donation | currency}}</td>
</ng-template>
</ngx-table>