Author: | katoid |
---|---|
Official Page: | Go to website |
Publish Date: | May 11, 2021 |
License: | MIT |
Description:
A responsive grid system with draggable and resizable grid items for Angular applications.
Specially designed to create highly customizable dashboards.
More Features:
- REDUX friendly (akita, ngrx, ngxs…)
- Customizable Drag & Resize handles.
- 3 modes of grid compaction: vertical, horizontal and free
- Add/Remove items
- High performance
- Supports touch devices
- Auto-scrolling while dragging
How to use it:
1. Install and import the module.
# NPM $ npm i @katoid/angular-grid-layout
import { KtdGridModule } from '@katoid/angular-grid-layout';
@NgModule({ imports: [KtdGridModule] })
2. In your app template:
<ktd-grid [cols]="cols" [rowHeight]="rowHeight" [layout]="layout" (layoutUpdated)="onLayoutUpdated($event)"> <ktd-grid-item *ngFor="let item of layout; trackBy:trackById" [id]="item.id"> <!-- Your grid item content goes here --> </ktd-grid-item> </ktd-grid>
import { ktdTrackById } from '@katoid/angular-grid-layout'; cols: number = 6; rowHeight: number = 100; layout: KtdGridLayout = [ {id: '0', x: 0, y: 0, w: 3, h: 3}, {id: '1', x: 3, y: 0, w: 3, h: 3}, {id: '2', x: 0, y: 3, w: 3, h: 3}, {id: '3', x: 3, y: 3, w: 3, h: 3}, ]; trackById = ktdTrackById