【发布时间】:2015-12-08 21:49:03
【问题描述】:
只是一个关于在 ng-repeat 中使用 track by $index 的一般问题,我在文档中找不到解决方案...
我有一个<div ng-repeat="concert in concerts track by $index">{{concert}}</div>,在它下面,我有一个数组,动态填充音乐会的开始时间,就像这样,<p>{{startTime[$index]}}</p>。有些音乐会没有有效的开始时间,有没有办法确定 [$index] 是否有 startTime,如果没有,定义代替它的文本?
我知道这是一种开放式,我可以使用函数来比较 concerts 数组和 startTimes 数组的长度,并用数据填充 startTimes 中的其余字段,但我希望有可能是更简单的方法?最佳做法?
感谢您的建议!
【问题讨论】:
-
请勿使用
$index执行此任务。$index不是数组中唯一项的索引;相反,它是ng-repeat的迭代器偏移量。这意味着过滤器可能会导致$index指向与预期不同的项目。
标签: javascript angularjs angularjs-ng-repeat ng-repeat angularjs-track-by