在 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>
我从数据库中加载了一个 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>