遍历包含对象的数组

Iterate over array which includes objects

我想知道如何使用 ng-repeat 查看一个对象中的不同对象?

这是我目前使用的以下代码,用于遍历数组中对象的 $ID:

<div ng-repeat="message in messages"> {{message.$id}} </div>

这是我的数组的样子:http://imgur.com/8quH0iW 如您所见,数组结构如下所示:
--项目[0]:
-----$Id:xxxxx
-----消息 1(唯一 ID):
--------------:日期:"XX-XX-XXXX"
--------------:消息:"whatever"
--------------:发件人:"xxxxxxxxxxxxxxxxxx"
-----消息 2(唯一 ID):
--------------:日期:"XX-XX-XXXX"
--------------:消息:"whatever"
--------------:发件人:"xxxxxxxxxxxxxxxxxx"
--项目[1]:
-----$Id:xxxxx
-----消息 1(唯一 ID):
--------------:日期:"XX-XX-XXXX"
--------------:消息:"whatever"
--------------:发件人:"xxxxxxxxxxxxxxxxxx"
-----消息 2(唯一 ID):
--------------:日期:"XX-XX-XXXX"
--------------:消息:"whatever"
--------------:发件人:"xxxxxxxxxxxxxxxxxx"

等等

TLDR:我如何使用 ng-repeat 来重复数组项中的对象?另外,我可以使用 ng-repeat 获取项目中的最后一个对象吗?例如,最后发送的消息?

谢谢!

您没有提及数组中的项目是数组还是 JSON 对象。如果你有一个 JSON 个对象的数组,那么这将有效

vm.objectsTest = [{$id : 123}, {$id: 234}];
<ul ng-repeat="o in vm.testObjects"><li ng-bind="o.$id"></li></ul>

如果您的项目是数组,那么您将需要访问数组中的对象,如下所示:

vm.objectsTest = [[{$id : 123}], [{$id: 234}]];
<ul ng-repeat="o in vm.testObjects"><li ng-bind="o[0].$id"></li></ul>

或者,如果您需要遍历嵌套数组的项目,那么您可能需要嵌套的 ng-repeats。然而,最好的选择是更改您的数据结构,因为过度使用 ng-repeat 会导致性能问题。

查看此 post 以访问 ng-repeat 的最后一个元素 Different class for the last element in ng-repeat