Próbuję dodać klasę, gdy jestem na określonej trasie. Kod jest w moim appcomponent, używam NgClass.

    @Component({
     selector: 'my-app',
     template: `<a [ngClass]="getRoute(router)">
       // Some html code....
    })

A potem mam funkcję w tej samej aplikacji.comPonent.ts

  export class AppComponent  { 
    getRoute(){
     if (this.router.url === '/atendimento'){
      return "hide-bar";
   }
  }
 }

Błąd, który otrzymuję, jest następujący:

Nieruchomość "Router" nie istnieje na "AppComponent"

I tak, importuję trasy, routermodułę i router na nagłówku. Czy ktoś może mi pomóc?

Z góry dziękuję

6
Renê Silva Lima 17 luty 2017, 18:12

2 odpowiedzi

Najlepsza odpowiedź

Musisz wstrzyknąć router

  export class AppComponent  { 

    constructor(private router:Router) {}

    getRoute(){
     if (this.router.url === '/atendimento'){
4
Günter Zöchbauer 17 luty 2017, 15:19

Proszę wstrzyknąć usługę routera do swojego konstruktora.

import { Router } from "@angular/router";
export class AppComponent  { 
constructor(private router:Router){}
    getRoute(){
     if (this.router.url === '/atendimento'){
      return "hide-bar";
   }
  }
 }

@Component ({selector: "My-App", szablon: `// jakiś kod HTML ....})

2
Saravana Manikandan 17 luty 2017, 16:16