Angular Switchable Grid
A simple grid for angular, Which can be switched between typical List view and a tile block view
Demo
https://sanuradhag.github.io/angular-switchable-grid/
Installation
Install through npm;
npm install --save angular-switchable-grid Then import GridModule and include it in your apps for module.
import { Component, NgModule } from '@angular/core'; import { GridModule } from 'angular-switchable-grid'; @NgModule({ imports: [ GridModule ] }) export class MyModule {} Then add angular-switchable-grid to your app template.
<angular-switchable-grid [data]="data" [columns]="columnTitles" [enableSelection]="true" [enableMultiSelect]="true" [filterBy]="'first_name'" [filterTerm]="filterTerm" [enableSort]="true" [isGridView]="isGridView" [noDataTemplate]="null" (getSelectedItems)="getSelectedItems($event)"> <ng-template let-item> <div>{{item.id}}</div> <div>{{item.first_name}}</div> <div>{{item.last_name}}</div> <div>{{item.email}}</div> <div>{{item.gender}}</div> <div>{{item.ip_address}}</div> </ng-template> </angular-switchable-grid> Styles
Style guide will be added soon.
Documentation
angular-switchable-grid properties.
| Property | Input/Output | Default value | Description |
|---|---|---|---|
| [data] | Input | [] - empty array | The data to be displayed in the grid. |
| [columns] | Input | [] - empty array | Titles of the columns in the grid. Type should be Array<{ property: string, displayName: string, width?: string }> |
| [enableSelection] | Input | false | Enable the selection of the rows of the grid. |
| [enableMultiSelect] | Input | false | Enable the multiple selection of the rows of the grid. |
| [filterBy] | Input | '' - empty string | Grid will be filtered by this key. |
| [filterTerm] | Input | '' - empty string | Grid will filter its's content by the filterBy and will display only the items which are similar to the this. |
| [enableSort] | Input | false | Enables sorting in the grid |
| [enablePagination] | Input | false | Enables pagination in the grid |
| [isGridView] | Input | false | If sets to true, Grid's view will be changed to Tile view from List view. |
| [noDataTemplate] | Input | Simple text 'No Data' | The template that will be displayed when there is no data. |
| (getSelectedItems) | Output | [] - empty array | Will emit the selected items when user is selecting items from the grid. |
And should pass a template for the row template.
<ng-template let-item> <div>{{item.id}}</div> <div>{{item.first_name}}</div> <div>{{item.last_name}}</div> <div>{{item.email}}</div> <div>{{item.gender}}</div> <div>{{item.ip_address}}</div> </ng-template> Public methods that can be used to access features of the grid.
exportAsExcelFile() - Export the grid data to a excel file. selectAll() - Select all the items in the grid. deselectAll() - Deselect all selected item in the grid. ToDo
- Grid pagination.
- Lazy loading.
Any suggestions?
Drop me a e-mail [email protected].
Or open a new issue in https://github.com/sanuradhag/angular-switchable-grid/issues
Contributors
Anuradha Gunasekara | Brion Mario |
|---|
License
This software is licensed under the MIT license