Gerçekten, direktifleri kullanmalısınız ve bir ng-Tekrar döngüsünün sonuna bağlı bir olay yoktur (her eleman ayrı ayrı inşa edildiğinden ve kendi olayına sahip olduğundan). Ancak a) direktifleri kullanmak ihtiyacınız olan tek şey olabilir ve b) "on ngRepeat bitmiş" etkinliğinizi yapmak için kullanabileceğiniz birkaç ng-Repeat özel özelliği vardır.
Özellikle, istediğiniz tek şey tüm tablonun etkinliklerini biçimlendirmek / eklemekse, bunu tüm ngRepeat öğelerini kapsayan bir yönergede kullanarak yapabilirsiniz. Öte yandan, her öğeye özel olarak hitap etmek istiyorsanız, ngRepeat içinde bir yönerge kullanabilirsiniz ve oluşturulduktan sonra her öğeye etki eder.
Sonra, orada $index
, $first
, $middle
ve $last
özellikleri, tetik olaylara kullanabilirsiniz. Bu HTML için:
<div ng-controller="Ctrl" my-main-directive>
<div ng-repeat="thing in things" my-repeat-directive>
thing {{thing}}
</div>
</div>
Bunun gibi yönergeleri kullanabilirsiniz:
angular.module('myApp', [])
.directive('myRepeatDirective', function() {
return function(scope, element, attrs) {
angular.element(element).css('color','blue');
if (scope.$last){
window.alert("im the last!");
}
};
})
.directive('myMainDirective', function() {
return function(scope, element, attrs) {
angular.element(element).css('border','5px solid red');
};
});
Bu Plunker'da çalışırken görün . Umarım yardımcı olur!
myMainDirective
Kodunu yalnızca döngü bittikten sonra yürütebilir miyim ? Ana div'in kaydırma çubuğunu güncellemem gerekiyor.