Ayrıca, AngularJS'ninng-repeat
yeni bir işlevselliğinden , özel tekrar başlangıç ve bitiş noktalarından bahsetmek istiyorum . Bu işlevsellik, tek bir yerine bir dizi HTML öğesini tekrarlamak için eklendi ana HTML öğesi .
Tekrarlayıcı başlangıç ve bitiş noktalarını kullanmak için ng-repeat-start
ve tuşlarını kullanarakng-repeat-end
sırasıyla direktiflerini .
ng-repeat-start
Direktifi çok benzer çalışır ng-repeat
direktifi. Aradaki fark, tüm HTML öğelerini (üzerinde tanımlandığı etiket dahil) ng-repeat-end
, yerleştirildiği bitişteki HTML etiketine (etiketi dahil ) kadar tekrarlayacağıdır ng-repeat-end
.
Örnek kod (bir denetleyiciden):
// ...
$scope.users = {};
$scope.users["182982"] = {name:"John", age: 30};
$scope.users["198784"] = {name:"Antonio", age: 32};
$scope.users["119827"] = {name:"Stephan", age: 18};
// ...
Örnek HTML şablonu:
<div ng-repeat-start="(id, user) in users">
==== User details ====
</div>
<div>
<span>{{$index+1}}. </span>
<strong>{{id}} </strong>
<span class="name">{{user.name}} </span>
<span class="age">({{user.age}})</span>
</div>
<div ng-if="!$first">
<img src="/some_image.jpg" alt="some img" title="some img" />
</div>
<div ng-repeat-end>
======================
</div>
Çıktı aşağıdakine benzer (HTML stiline bağlı olarak):
==== User details ====
1. 119827 Stephan (18)
======================
==== User details ====
2. 182982 John (30)
[sample image goes here]
======================
==== User details ====
3. 198784 Antonio (32)
[sample image goes here]
======================
Gördüğünüz gibi, ng-repeat-start
tüm HTML öğelerini (öğesi dahil ng-repeat-start
) tekrar eder. Tüm ng-repeat
özel özellikler (bu durumda $first
ve $index
) de beklendiği gibi çalışır.