2016-05-07 6 views
4

Wir Interpolation verwenden können, einen Eingang in die Vorlage zu schreiben:Angular 2-Komponenten Arten von Eingangs

@Component({ 
    selector: 'tag', 
    inputs: ['color'], 
    template: ` 
     <div id="test" style="background: {{color}}"> 
      Some text 
     </div> 
    `, 
}) 
class TestComponent { 
} 

Meine Frage ist: Ist es möglich, sie (irgendwie) zu erhalten, wie dies funktioniert:

@Component({ 
    selector: 'tag', 
    inputs: ['color'], 
    template: ` 
     <div id="test"> 
      Some text 
     </div> 
    `, 
    styles: ['#test { background: {{color}}; }'], 
}) 
class TestComponent { 
} 

Dieser letzte Versuch funktioniert nicht, und ich kann nicht scheinen, einen Weg zu finden, wie es geht.

Danke.

Antwort

3

AFAIK können Sie das nicht tun. Component styles Metadaten hätten keinen Zugriff auf seine Class Variable. Ich schlage vor, dass Sie für ngClass/ngStyle

<div id="test" [ngStyle]="{ 'background': color }"> 
    Some text 
</div> 
gehen