Unstyled responsive menu with a fully-templated API.
Following is the list of structural style classes:
ul
li
span
Simplest way with CSS icons e.g Font Awesome.
@Component({ selector: 'itldemo-demo-menu', template: ` <itl-menu [dataSource]="menuDataSource" (menuItemClick)="onMenuItemClick($event)" navigateBackIconClass="fa fa-back"> </itl-menu> ` }) export class DemoMenuComponent { public menuDataSource: Observable<MenuItem[]> = of([ { icon: 'fa fa-users', label: 'Users' }, { icon: 'fa fa-calendar-week', label: 'Calendar' } ]); public onMenuItemClick(menuItem: MenuItem): void { // invoke action for menu item... } }
Use custom icon template.
<itl-menu [dataSource]="menuDataSource" (menuItemClick)="onMenuItemClick($event)"> <ng-template itlMenuNavigateBackIcon> <mat-icon>arrow_back</mat-icon> </ng-template> <ng-template itlMenuItemIcon let-icon> <mat-icon>{{icon}}</mat-icon> </ng-template> </itl-menu>
Set to true if sliding animation should be disabled.
true
Event emitted when menu item has been clicked.
CSS class for the navigate back icon. See itlMenuNavigateBackIcon for alternative way to provide a navigate back icon.
Menu's source of data, a stream that emits a data array each time the array changes.
Generated using TypeDoc
Unstyled responsive menu with a fully-templated API.
Styling
Following is the list of structural style classes:
ul
as menu element.li
as menu item, wrapper of icon and label.span
element containing the icon of the menu item.span
element containing the label of the menu item.li
as navigate back item, only visible if a sub menu is opened.Simplest way with CSS icons e.g Font Awesome.
@Component({ selector: 'itldemo-demo-menu', template: ` <itl-menu [dataSource]="menuDataSource" (menuItemClick)="onMenuItemClick($event)" navigateBackIconClass="fa fa-back"> </itl-menu> ` }) export class DemoMenuComponent { public menuDataSource: Observable<MenuItem[]> = of([ { icon: 'fa fa-users', label: 'Users' }, { icon: 'fa fa-calendar-week', label: 'Calendar' } ]); public onMenuItemClick(menuItem: MenuItem): void { // invoke action for menu item... } }
Use custom icon template.
<itl-menu [dataSource]="menuDataSource" (menuItemClick)="onMenuItemClick($event)"> <ng-template itlMenuNavigateBackIcon> <mat-icon>arrow_back</mat-icon> </ng-template> <ng-template itlMenuItemIcon let-icon> <mat-icon>{{icon}}</mat-icon> </ng-template> </itl-menu>