AngularJS: 如何在 ng-repeat 中使用 $index
AngularJS: How to use $index inside ng-repeat
我有这样的ul:
<ul class="dropdown-menu inner" role="menu">
<li ng-repeat="availableAlphaName in availableAlphaNames" data-original-index="0" data-optgroup="1" class="">
<a tabindex="0" class="opt " style="" data-tokens="null">
<span class="text">{{availableAlphaName.Name}}</span>
<span class="glyphicon glyphicon-ok check-mark"></span>
</a>
</li></ul>
data-original-index 必须有索引值。但是,如果我将 data-original-index 设置为 $index,它将始终为 0,因为每个实例都有自己的范围。
请帮忙解决这个问题。
您应该在 ng-repeat
中指定 track by $index
<li ng-repeat="availableAlphaName in availableAlphaNames track by $index" data-original-index={{$index}} data-optgroup="1" class="">
<a tabindex="0" class="opt" style="" data-tokens="null">
<span class="text">{{availableAlphaName.Name}}</span>
<span class="glyphicon glyphicon-ok check-mark"></span>
</a>
</li>
我有这样的ul:
<ul class="dropdown-menu inner" role="menu">
<li ng-repeat="availableAlphaName in availableAlphaNames" data-original-index="0" data-optgroup="1" class="">
<a tabindex="0" class="opt " style="" data-tokens="null">
<span class="text">{{availableAlphaName.Name}}</span>
<span class="glyphicon glyphicon-ok check-mark"></span>
</a>
</li></ul>
data-original-index 必须有索引值。但是,如果我将 data-original-index 设置为 $index,它将始终为 0,因为每个实例都有自己的范围。
请帮忙解决这个问题。
您应该在 ng-repeat
track by $index
<li ng-repeat="availableAlphaName in availableAlphaNames track by $index" data-original-index={{$index}} data-optgroup="1" class="">
<a tabindex="0" class="opt" style="" data-tokens="null">
<span class="text">{{availableAlphaName.Name}}</span>
<span class="glyphicon glyphicon-ok check-mark"></span>
</a>
</li>