So drucken Sie HTML-Strings als HTML

Lesezeit: 2 Minuten

Benutzer-Avatar
da ich bin

Wenn ich nur zum Beispiel mache:

var = "<a>Asd</a>";

<span>{{ var }}</span>

Die Zeichenfolge wird wie Text und nicht als HTML gedruckt, also wie drucke ich das HTML?

Sie sollten verwenden ng-bind-html Richtlinie.

Erstellt eine Bindung, die das Ergebnis der Auswertung des Ausdrucks auf sichere Weise in das aktuelle Element einfügt.

<ANY ng-bind-html="{expression}">
   ...
</ANY>

  • Ausdruck kann eine Variable oder eine Funktion sein. überlegen wir uns var htmlString='<somehtml />'dann sollte es so sein <span ng-bind-html='htmlString'></span>

    – Fizer Khan

    20. Januar 2014 um 10:54 Uhr

  • Jetzt müssen Sie auf ng-sanitize verweisen, um dies zu erreichen. docs.angularjs.org/api/ngSanitize

    – Eduardo

    30. Juni 2015 um 3:14 Uhr


Benutzer-Avatar
Wellington Lorindo

Vor der Verwendung des ng-bind-html Direktive müssen Sie die einfügen $desinfizieren Service oder es wird ein Fehler ausgegeben.

Fehler: $sce:unsafe Require a safe/trusted value Versuch, einen unsicheren Wert in einem sicheren Kontext zu verwenden.

Error: [$sce:unsafe] http://errors.angularjs.org/1.4.5/$sce/unsafe
    at Error (native)

Der richtige Weg:

<script src="https://stackoverflow.com/questions/21231630/angular.js"></script>
<script src="angular-sanitize.js"></script>
var myApp = angular.module('app', ['ngSanitize']);
myApp.controller('MyController', ['$scope', function($scope) {
  $scope.myHTML = '<a href="#">Hello, World!</a>';
}]);
<div ng-controller="MyController">
 <p ng-bind-html="myHTML"></p>
</div>

https://docs.angularjs.org/api/ngSanitize

https://docs.angularjs.org/api/ng/directive/ngBindHtml

Du kannst auch so etwas versuchen:


    app.filter('to_trusted', ['$sce', function($sce) {
      return function(text) {
        return $sce.trustAsHtml(text);
      };
    }]);

und dann im Blick:


    ng-bind-html=" myHTML | to_trusted"

  • Wo wird dies im Winkelprojekt hinzugefügt?

    – lesolorzanov

    21. September 2021 um 15:55 Uhr

1055740cookie-checkSo drucken Sie HTML-Strings als HTML

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy