如何访问angularjs ng-repeat中的上一个和下一个项目

时间:2014-07-10 15:13:02

标签: angularjs angularjs-ng-repeat

我有一个使用ng-repeat显示的事件列表。从每个事件中,我需要访问上一个和下一个事件,以了解HTML显示的原因。当我不使用过滤器时,使用

可以很好地工作
events[$index - 1]

但是,如果我使用

过滤并重新排序事件
event in events | myMinDate: 'start':config.now | orderBy: 'start'

我不能使用这种技术,因为事件数组仍然引用原始(未过滤,未排序)数据结构。不幸的是,没有过滤数据的数据数组或类似$ previous和$ next。

任何想法如何在不触及实际事件数组的情况下实现这一目标?

1 个答案:

答案 0 :(得分:16)

您可以将过滤器的结果保存到新变量中:

 event in filteredEvents = (events | myMinDate: 'start':config.now | orderBy: 'start')

然后:

filteredEvents[$index - 1]