Betrachten Sie die folgende Symbolkomponente. Warum bleibt die Variable color
als Wortfarbe erhalten, anstatt interpoliert zu werden?ngClass-Interpolation funktioniert nicht
import {Component, Input, OnInit} from '@angular/core';
@Component({
moduleId: module.id,
selector: 'nui-icon',
template: `
<i class="material-icons"
[ngClass]="{color: true, 'bordered': border}"
[ngStyle]="{'font-size':size + 'px'}">
<ng-content></ng-content>
</i>
`,
styles: [`
i {
display: inline-flex;
}
i.bordered {
border: 1px solid #d8d8d8;
border-radius: 50%;
padding: 15px;
}
`]
})
export class NuiIconComponent implements OnInit {
@Input() color: string;
@Input() size: string = '24';
@Input() border: boolean = false;
constructor() {}
ngOnInit() {
}
}
Wo verwenden Sie HostBinding? – yurzui
@yurzui scratchen, dass ich falsche Titel hatte - wenn Sie die Seite aktualisieren, sollten Sie die tatsächliche –
von Ihrem Code sehen die 'Farbe' sieht eher ein 'Stil' als eine 'Klasse'. Ist es so? Ansonsten sollten Sie das im Styles-Array erwähnen. Außerdem scheint die "Farbe" @ Input eine Saite zu sein, die mich denken lässt, dass sie ursprünglich als Stil gedacht war – amal