Javascript 如何使用AngularJS显示HTML属性

Javascript 如何使用AngularJS显示HTML属性,javascript,angularjs,Javascript,Angularjs,以下是基于AngularJS v1.2.12构建的工作小提琴: 我遇到的问题是:我从web服务返回一个对象数组。(fiddle通过硬编码数组简化了这一过程。)数组中的每个对象都有一个包含html字符串的属性,我想将其呈现到页面。我通过在数组上循环并通过$sce创建一个额外属性来实现这一点 函数ctrl($scope、$sce、$log){ $scope.friends=[ {姓名:'John',年龄:25岁,性别:'boy',备注:'这是html内容!'}, {姓名:'Jessie',年龄:30

以下是基于AngularJS v1.2.12构建的工作小提琴:

我遇到的问题是:我从web服务返回一个对象数组。(fiddle通过硬编码数组简化了这一过程。)数组中的每个对象都有一个包含html字符串的属性,我想将其呈现到页面。我通过在数组上循环并通过$sce创建一个额外属性来实现这一点

函数ctrl($scope、$sce、$log){
$scope.friends=[
{姓名:'John',年龄:25岁,性别:'boy',备注:'

这是html内容!

'}, {姓名:'Jessie',年龄:30岁,性别:'girl',备注:'

«;这是html内容!

' ]; 对于(变量i=0;i<$scope.friends.length;i++){ $scope.friends[i].trustedNotes=$sce.trustAsHtml($scope.friends[i].notes); } }
如果数据看起来很熟悉,那是因为我从AngularJS文档中借用了它

我已经测试了以下绑定到html的方法:

  • {{friend.notes} {{friend.trustedNotes}
因此,我的问题有两个:

  • 这种“for循环”方法是显示每个对象的html的最佳方法吗
  • 是否可以在没有包装元素的情况下使用
    ngBindHtml

  • 要解决第二个问题,如果您只想将HTML设置为
  • 的内部HTML,可以将
    ng bind HTML
    应用于
  • 本身:

    <li class="animate-repeat" ng-repeat="friend in friends" ng-bind-html="friend.trustedNotes"></li>
    

  • 您可能可以创建一个原始HTML过滤器,使其看起来像
    {{{friend.trustedNotes | raw}}