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>
_
OK、ngSanitize var app = angular.module('app', ['ngSanitize']);
を追加しました。
見逃したようです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);
});