Heim > Fragen und Antworten > Hauptteil
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
学习ing2017-06-12 09:27:58
angular的host遵循的是模板语法的绑定的规则,可参考(Template Syntax)[https://angular.io/docs/ts/la...。
因此,你的host,大概应该如此:
host: {
'[class.special]': 'test',
'[attr.aria-label]': 'true'
}