在 angular js 中打印从数据库加载的 html 数据

Printing html data loaded from database in angular js

我从数据库中加载了一个 JSON 个对象 的数组。每个对象中都有一个特定的键,它有html个内容.

我想在我的视图中显示这些内容以及所有其他内容。我使用了 ng-html-bind,因为我在我的控制器中有 $sce 依赖。如果我在里面放一个像 <h1>Trusted html</h1> 这样的字符串,它就可以工作。但不是为了我的内容。

我真正想要的是,如果我将这些内容放在 $scope.htmlContent = $sce.trustAsHtml(data.content); 之类的位置,它应该可以正常工作,并在我认为它们所属的位置将所有这些内容一一循环。但是它不起作用。

我还制作了另一个数组,单独推送所有这些内容 material 但是当我将它们传递给 $sce.trustAsHtml(trustMe); 时出现了问题。

--------------------------------编辑-------- ------------------------------

这些是我的对象:

[Object, Object, Object, Object, Object, Object, Object, Object, Object]

:
Object
8
:
Object
$$hashKey
:
"object:22"
content
:
"<h2>Test data.</h2>
↵"
created_at
:
"2016-08-12 14:12:35"
id
:
9
name
:
"Test"
points
:
4
semester
:
"Eagle Nest"
semester_id
:
6
status
:
0
subject
:
"Android"
subject_id
:
6
updated_at
:
"2016-08-12 14:12:35"
user_id
:
1
__proto__
:

我的观点

<div class="panel panel-default" ng-repeat="quiz in quizzes">
              <div class="panel-body">
                @ quiz.semester @ <span class="pull-right">Subject: @ quiz.subject @ </span>
                <hr class="blur-line">
                <p class="list-group-item-text list-item">
                <i class="fa fa-long-arrow-right"></i>  @ quiz.name @
                </p>
                <p class="details" ng-bind-html="MytrustedHtml"></p>

              </div>
            </div>

控制器

$scope.MytrustedHtml = $sce.trustAsHtml(data.content);

过滤器可能是更好的管理方式。

.filter('rawHtml', ["$sce", function($sce) {
    return function(input) {
        return $sce.trustAsHtml(input);
    };
}]);

并在标记中

<p ng-bind-html="MytrustedHtml | rawHtml"></p>