Aufruf einer Funktion, wenn die ng-repeat beendet hat

Was ich versuche zu implementieren ist im Grunde ein "ng-repeat finished rendering" - handler. Ich bin in der Lage zu erkennen, Wann es fertig ist aber ich kann nicht herausfinden, so führen Sie eine Funktion aus.

Überprüfen Sie die Geige:http://jsfiddle.net/paulocoelho/BsMqq/3/

JS

var module = angular.module('testApp', [])
    .directive('onFinishRender', function () {
    return {
        restrict: 'A',
        link: function (scope, element, attr) {
            if (scope.$last === true) {
                element.ready(function () {
                    console.log("calling:"+attr.onFinishRender);
                    //CALL TEST HERE!
                });
            }
        }
    }
});

function myC($scope) {
    $scope.ta = [1, 2, 3, 4, 5, 6];
    function test() {
        console.log("test executed");
    }
}

HTML

<div ng-app="testApp" ng-controller="myC">
    <p ng-repeat="t in ta" on-finish-render="test()">{{t}}</p>
</div>

Antwort:
Arbeiten Geige aus finishingmove: http://jsfiddle.net/paulocoelho/BsMqq/4/

Aus Neugier, was ist der Zweck der element.ready() snippet? Ich meine.. ist es eine Art jQuery-plugin, das Sie haben, oder sollte es werden ausgelöst, wenn das element bereit ist?
Könnte man es mit built-in-Direktiven wie ng-init
Mögliche Duplikate von ng-repeat beenden-Ereignis
Duplikat von stackoverflow.com/questions/13471129/..., siehe meine Antwort dort

InformationsquelleAutor PCoelho | 2013-03-04

Schreibe einen Kommentar