Почему ng-bind-html ничего не показывает?

Я отображаю строку, содержащую HTML-код:

<div style="font-size: 14px" ng-bind="currentBook.description"></div>

положить его отображает HTML-код вместо интерпретации элементов:

Когда я использую ng-bind а также ng-bind-unsafe, это ничего не показывает.

Как я могу получить HTML для анализа?

добавление

Я добавил ссылку для очистки, но ng-bind а также ng-bind-unsafe пока ничего не показывают

<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.2.26/angular.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.2.26/angular-route.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.3.8/angular-sanitize.js"></script>

Хорошо, я добавил ngSanitize var app = angular.module('app', ['ngSanitize']); и теперь это работает.

2 ответа

Решение

Похоже, вы пропустили ngSanitize, см. Демо ниже

Вы можете найти больше здесь

https://docs.angularjs.org/api/ngSanitize/service/ $ sanitize

var app = angular.module('app', ['ngSanitize']);

app.controller('firstCtrl', function($scope, $sce) {
  $scope.currentBook = {
    description: "<p>some description</p>"

  };
});
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.8/angular.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.8/angular-sanitize.js"></script>

<body ng-app="app">
  <div ng-controller="firstCtrl">
    <div style="font-size: 14px" ng-bind-html="currentBook.description"></div>
  </div>
</body>

Позвоните подать заявку

    $scope.$apply(function () {
            $scope.currentBook.description = $sce.trustAsHtml(html);
        });
Другие вопросы по тегам