Memang, Anda harus menggunakan arahan, dan tidak ada peristiwa yang terikat pada akhir loop Ulangi (karena setiap elemen dibangun secara individual, dan memiliki acara itu sendiri). Tetapi a) menggunakan arahan yang mungkin Anda butuhkan dan b) ada beberapa sifat spesifik yang dapat Anda gunakan untuk membuat acara "saat ngRepeat selesai".
Khususnya, jika semua yang Anda inginkan adalah gaya / menambahkan acara ke seluruh tabel, Anda dapat melakukannya dengan menggunakan arahan yang mencakup semua elemen ngRepeat. Di sisi lain, jika Anda ingin membahas setiap elemen secara khusus, Anda dapat menggunakan arahan dalam ngRepeat, dan itu akan bertindak pada setiap elemen, setelah itu dibuat.
Lalu, ada $index
, $first
, $middle
dan $last
sifat dapat Anda gunakan untuk acara pemicu. Jadi untuk HTML ini:
<div ng-controller="Ctrl" my-main-directive>
<div ng-repeat="thing in things" my-repeat-directive>
thing {{thing}}
</div>
</div>
Anda dapat menggunakan arahan seperti:
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');
};
});
Lihat beraksi di Plunker ini . Semoga ini bisa membantu!
myMainDirective
kode dieksekusi hanya setelah akhir dari loop? Saya perlu memperbarui scrollbar div induk.