如何在 angularJS 中使用 ng-bind-html 指令绑定数组?

How to bind array with ng-bind-html directive in angularJS?

我想为每个项目显示不同的描述。 这是控制器:

todoApp.controller('todos',function($scope,todoFactory){
      todoFactory.getTodos().success(function (data) {
        courses = x2js.xml_str2json(data);
        $scope.todos = courses.rss.channel.item;
        for(var i = 0 ; i < $scope.todos.length ; i++){
          item = $scope.todos[i];
         console.log(item.description);
          $scope.message = item.description;
        }
      });

这是 html:

<div ng-controller="todos" class="list" style="padding-top: 8%">
      <div class="list card" ng-repeat="todo in todos | filter:search" >
        <div class="item item-avatar" ng-click="openLink(todo.link)" >
          <img src="Bla-Bla-Logo-1.png">
          <h2>{{todo.title}}</h2>
          <p>{{todo.pubDate | limitTo:25 }}</p>
        </div>

        <div class="item item-body">
          <p ng-bind-html="message"></p>
          <p>
            <a href="#" class="subdued">1 Like</a>
            <a href="#" class="subdued">5 Comments</a>
          </p>
        </div>
    </div>
    <!--end list card-->
    </div>
    <!--end todos-->

只是为了解释我得到的代码 xml 并转换为 json 所以 todos 是对象数组。 消息正在进入每个对象并获取描述(但在描述中有标签,所以我使用 ng-bind-html 指令正确显示它)。

我知道 $scope.message 将只保留最后的描述。如何让它属于 ng-repeat 以便我可以获得不同项目的不同描述?

谢谢。

请提供您要重复显示的数据。 数据如何 represented.You 是最后一个,因为它是压倒一切的。

"ngBind" 属性告诉 Angular 用给定表达式的值替换指定 HTML 元素的文本内容,并在表情变了。

通常情况下,您不会直接使用 "ngBind",而是使用类似于 {{ expression }} 的双卷曲标记,它类似但不那么冗长。

替换

<p ng-bind-html="message"></p>

 <p ng-bind-html="todo.description"></p>