2016-05-11 12 views
2

Gibt es eine Möglichkeit, Parameter an die Wurzel einer Angular 2-Komponente zu übergeben? Ich konnte dies mit den Komponenten tun, den Teil der internen Komponentenvorlage sind aber nicht mit der Stammkomponente:Angular 2-Komponente initialisieren mit Attribut

<my-component [test] = "some-val"></my-component> 

Auf meiner Komponente:

export class AppComponent implements OnInit { 
    test: string; 

    ngOnInit() { 
     console.log(this.test); //test is undefined 
    } 
} 

Der Grund, dies zu tun, ist die Verwendung Razor-Variablen, die an Angular übergeben werden sollen. Zum Beispiel das Bearbeiten eines Benutzers. Ich könnte so etwas wie:

<edit-form [model] = "@Model.Id" > </edit-form> 

Antwort

2

Angular nicht aus index.html nur jede Bindung macht aus anderen Komponenten.

Eine Abhilfe Werte in der Wurzelkomponente erhalten Attribut ist

export class AppComponent { 
    constructor(elementRef:ElementRef) { 
    console.log(elementRef.nativeElement.getAttribute('inputField)); 
    } 
} 

Siehe auch https://github.com/angular/angular/issues/1858

Verwandte Themen