Могу ли я предотвратить ng-repeat от html-кодирования / экранирования моего контента в AngularJS 1.2? Или нужно написать собственную директиву?
Как я могу предотвратить ng-repeat от html-кодирования / экранирования моего контента в AngularJS 1.2? Мне нужно написать свою собственную директиву? Я прочитал это ng-bind-html-unsafe
устарел в Angular 1.2, но я не нашел убедительной информации относительно его использования с ng-repeat. Некоторая информация сказала использовать ng-bind-html, но это тоже не сработало.
<div ng-repeat="entry in blogEntries" ng-bind-html-unsafe="entry.title">
<div class="well">
<div>{{entry.date }}</div> {{entry.title}}
</div>
</div>
Это приводит к тому, что часть моего текста отображается как HTML вместо рендеринга HTML:
<ul> <li>Blah1 5.1<li> <li>Blah 3<li></ul>
Я тоже пробовал ng-bind-html
Я могу обновить при необходимости
Нужно ли использовать модуль ng-sanitize для того, чтобы использовать ng-bind-html
?
1 ответ
Решение
Директива ng-bind-html
работает, но мне пришлось включить модуль очистки. Т.е.
var blogApp = angular.module('blogApp', ['ngRoute', 'ngSanitize'])
.config(['$routeProvider', '$locationProvider', function ($routeProvider, $locationProvider) {
...
}]);
<div ng-repeat="entry in blogEntries">
<div class="well">
<div>{{entry.date}}</div><span ng-bind-html="entry.title"></span>
</div>
</div>