Я думаю, что перепробовал все решения, представленные при переполнении стека, но не нашел ответа.
Я использую директиву angular 1.4.4 и ng-repeat и хочу отобразить комментарий HTML внутри строки таблицы. Пример комментария: «Проверочный комментарий».
<tbody ng-show="dataLoaded">
<tr ng-repeat="comment in comments | filter: commentFilter | commentFilter: customCommentFilter | limitTo: 10 : (currentPage*10-10)">
<td ng-bind-html="comment.Comment | html">
</td>
</tr>
</tbody>
Затем внутри моего файла фильтра я использую следующий фильтр:
// html filter (render text as html)
angular.module('app').filter('html', ['$sce', function ($sce) {
return function (text) {
return $sce.trustAsHtml(text);
};
Кроме того, он работает, когда я пишу что-то вроде
<td ng-bind-html="'<b>abc</b>' | html">
Наконец, когда я пишу что-то вроде
<td>
{{comment.Comment}}
</td>
Комментарий отображается как ‹b›Проверить комментарий‹/b›.
Кроме того, я добавил ngSanitize:
(function () {
'use strict';
var app = angular.module('app', [
// Angular modules
'ngCookies',
'ngRoute',
'ngAnimate',
'ngSanitize',
]);
...
...
})();
Мой вопрос: как я могу заставить ng-bind-html работать в моем примере?