File

src/app/menu-items/menu-items.components.ts

Metadata

changeDetection ChangeDetectionStrategy.OnPush

Index

Methods
Inputs

Constructor

constructor(router: Router)
Parameters :
Name Type Optional Description
router Router

Inputs

model

Type: NavigationLinkModel

Methods

navigate
navigate()
Returns : void
import { 
    Component, 
    Input, 
    ChangeDetectionStrategy, 
    ViewChild, 
    EventEmitter, 
    Output } from '@angular/core';
import { Router } from '@angular/router';
import { 
    NavigationLinkModel, 
    MenuLabelModel, 
    MenuButtonModel } from './menu-items.interfaces';

@Component({
    template: `
                <a class="nav-link"
                   [routerLink]="[model.value]"
                   routerLinkActive="selected"
                   [queryParams]="model.queryParameters"
                   [preserveQueryParams]="model.preserveQParams">
                    {{model.text}}
                </a>
    `,
    changeDetection: ChangeDetectionStrategy.OnPush
})
export class NavigationLink {
    @Input() model: NavigationLinkModel;

    constructor(private router: Router) {
    }

    navigate() {
        this.router.navigate([this.model.value],
        {
            queryParams: this.model.queryParameters,
            preserveQueryParams: this.model.preserveQParams
        })
    }
}

@Component({
    template: `<input class="menu-input"
				[(ngModel)]="input"
				(ngModelChange)="inputChanged($event)"				
                placeholder="Type something..."/>
	`,
    changeDetection: ChangeDetectionStrategy.OnPush
})
export class MenuInput {
    input: string;
	
    constructor() {
    }
	
	inputChanged(e: any){
		
	}
}

Legend
Html element
Component
Html element with directive

results matching ""

    No results matching ""