Angular - Interpolation string mit html
So, ich habe ein "template Strings", die so aussieht:
var templateString = "Hello my name is {{name}}";
Den Namen, die ich interpolieren ist eine variable. Also ging ich auf diese Weise:
var miniScope = {
name: "Chuck"
};
var sentence = $interpolate(templateString)(miniScope);
/* sentence: "Hello my name is Chuck" */
Dieser funktioniert. Jetzt würde ich gerne Fett den Namen. Ich habe es natürlich ausprobiert:
var miniScope = {
name: "<strong>Chuck</strong>"
};
Aber der html-code wird escaped. Irgendeine Idee, wie ich diese erreichen können?
PS: Für diejenigen von Euch, die sich Fragen, warum ich nicht einfach den string in der Vorlage, ist es, weil meine Vorlage Zeichenfolge, die vom server kommt.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Diese Plunkr Ausgänge "Hallo, mein name ist Chuck" als erwartet. Der JavaScript-Code ist unverändert aus der Frage.
Und in Ihrem HTML-Code vornehmen Verwendung Sie verwenden
ng-bind-html
zu halten, die HTML aus, das kodiert wird.ng-bind-html
arbeitet mit angular2 ?ng-bind-html
funktioniert nicht in den Winkel-2. Sie benötigen[innerHTML]
wie bereits in dieser beantworten.verwenden Sie diese Richtlinie, um zu kompilieren Zeug aus dem string.
und verwenden, $sce zu kompilieren Vertrauenswürdige html wenn Sie brauchen, Eckig $sce doc
aber alle diese Dinge nicht eckig Weise Umgekehrt ist, müssen Sie einige verschiedene Teiltöne, und schließen Sie ihn mit ng-include-Direktive.