2017-04-12 1 views
1

ich habe:Wie benutzt man Angular2 innerHTML Ausdrücke?

<div [innerHtml]="myStr"> 

wo:

this.myStr=='{{1+1}}' 

ich es angezeigt werden soll:

Aber es gibt:

{{1 + 1}}

In Angular1 $ Kompilierung wurde für dieses Problem verwendet. Was verwenden wir in Angular2 zum Kompilieren von Ausdrücken?

+2

Warum nicht direkt this.myStr = 1 + 1; ? – Sakuto

+0

http://stackoverflow.com/questions/34784778/equivalent-of-compile-in-angular-2/37044960#37044960 –

+0

Ich habe versucht, den Link, aber es bewertet keine Ausdrücke in einer Zeichenfolge. Es erstellt nur dynamisch Komponenten, die bereits definiert, aber noch nicht instanziiert sind. – danday74

Antwort

1

{{ }} (doppelte Klammern) signalisiert Winkel, um Werte auf dem View oder Client zu interpolieren, nicht in der Komponentenklasse. Sie möchten nur den Wert von this.myStr wie eine normale String-Variable in Javascript setzen.

nach Ihrem Beispiel würden Sie

this.myStr = '' + (1 + 1); 

oder

verwenden
this.myStr = (1 + 1).toString(); 
+0

nicht wirklich die Antwort, die ich wollte, aber die beste Antwort gegeben, so akzeptiert es – danday74