javascript - Wie bindet Angular2 Eingabeattribute an Komponenten-Tags, an die weitergeleitet werden muss, nachdem <route-outlet></route-outlet> Platz belegt?
迷茫
迷茫 2017-06-12 09:25:58
0
1
579

Lösung, wie in der Frage beschrieben:
Ich möchte Daten an eine Komponente übergeben, aber diese Komponente wird am Standort von <route-outlet></route-outlet> angezeigt und [XX] = „XX“ kann nicht direkt zum Router-Outlet-Label hinzugefügt werden,

Ein Blick auf die Dokumentation zeigt, dass Klasse und Attribut über das mit @conponent annotierte Hostfeld gebunden werden können,
Aber wenn ich [Eingabewert] binde, wird ein Fehler gemeldet,

@Component({
  selector: 'app-onlinecourse',
  templateUrl: './onlinecourse.component.html',
  host:{
    class:"test",
    '[test]':"test"
  }
......

  @Input()
  test;
.....
 ngOnChanges() {
      console.log(this.test);
  }
//undifind

Fehlermeldung:
Kann nicht an „test“ gebunden werden, da es sich nicht um eine bekannte Eigenschaft von „app-onlinecourse“ handelt.

请输入代码

Danke

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

Antworte allen(1)
学习ing

angular的host遵循的是模板语法的绑定的规则,可参考(Template Syntax)[https://angular.io/docs/ts/la...。

因此,你的host,大概应该如此:

host: {
    '[class.special]': 'test',
    '[attr.aria-label]': 'true'
}
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage