AngularJS ng-repeat数组索引迭代

时间:2016-02-29 20:35:25

标签: javascript android arrays angularjs cordova

我正在为Android构建一个Cordova应用程序,我有一系列条目,我在使用Ionic的卡片列表中显示。

这就是我展示它们的方式:

    <!-- // List of Cards // -->
    <div class="list card" ng-repeat="entry in entryDB">

      <!-- // Card Title // -->
      <div class="item item-divider">{{entry[1].link}}</div>
      <!-- // Card Contents // -->
      <div class="item item-body" ng-click="browse(entry[1].link)">
        <h2><b>{{entry[1].title}}</b></h2>
        <p>{{entry[1].contentSnippet}}</p>
        <p><a class="subdued">{{entry[1].publishedDate}}</a></p>
      </div>

    </div>

如何更新数组中每个对象的entry [index]的索引值,以便在列表中为数组中的每个对象创建一个新行?

我尝试使用'追踪$ index',但这不起作用。

另外通过我尝试使用标准方式显示entires的方式,但这是通过使用[index]显示每个条目分别显示每个条目的唯一方法,如果我删除它,它只创建一个包含整个数组的列表项。

我是AngularJS的新手,我一直在为这个问题撕掉我的头发,我可以想象这是一件非常简单的东西,我不知道。

1 个答案:

答案 0 :(得分:0)

由于entryDB是一个数组数组,因此在你的ng-repeat条目中仍然是一个需要循环的数组,并通过$ index引用跟踪引用$ index将无法获得你在条目中寻找的内容。如果要显示条目中的所有项目,则需要嵌套的ng-repeat来访问这些项目。而不是:

<div class="list card" ng-repeat="entry in entryDB">

做:

<div ng-repeat="entry in entryDB"> 
    <div class="list card" ng-repeat="item in entry">
        <!-- // Card Title // -->
        <div class="item item-divider">{{item.link}}</div>
        <!-- // Card Contents // -->
        <div class="item item-body" ng-click="browse(item.link)">
            <h2><b>{{item.title}}</b></h2>
            <p>{{item.contentSnippet}}</p>
           <p><a class="subdued">{{item.publishedDate}}</a></p>
        </div>
    </div>
</div>