AngularJS, promesse avec fonction récursive

Je suis en train d'utiliser le AngularJS promesse/puis avec une fonction récursive. Mais la fonction n'est pas appelée (aucune erreur, le succès-, de notification des rappels est appelée).

Voici mon code:

fonction récursive

loadSection2 = function() {

    var apiURL = "http://..."

    var deferred = $q.defer();

    $http({
        method: "GET",
        url: apiURL
    }).success(function(result, status, headers, config) {
        console.log(result);
        loadCount++;
        if(loadCount < 10) {
            newSectionArray.push(result);
            loadSection2(); 
        } else {
            loadCount = 0;
            deferred.resolve();
            return deferred.promise;
        }
    }).error(function() {
        return deferred.reject();
    });
    deferred.notify();
    return deferred.promise;
};

puis

loadSection2().then(function() {
    console.log("NEW SECTIONS LOADED, start adding to document");
    addContent();
}, function() {
    console.log("ERROR CALLBACK");
}, function() {
    console.log("NOTIFY CALLBACK");
}).then(function() {
    loadScrollActive = false;
});

Je pense, l'a alors pour obtenir la première notification de rappel au moins. Mais il n'y a pas de rappel.
Est alors de ne pas travailler avec une fonction récursive?

Pourriez-vous nous donner un jsfiddle?
Une chose que je vois, c'est que vous ne pouvez pas retourner quelque chose à partir d'une fonction de rappel. Donc retour différé.promesse .succès et .l'erreur ne fait rien. Pas la cause du problème.
Où est 'loadCount" définis? Et, notify ne fonctionne pas comme vous le pensez. J'ai une question ouverte pour que, dans angulaire repo -> github.com/angular/angular.js/issues/5277
Hm, il y avait une réponse qui a résolu le problème, mais maintenant il a disparu. Le problème, c'est que le "différé" est initialisé à chaque appel de la loadSection2(). @Rifat: informer fonctionne pour moi. La notification de rappel est appelée aussi longtemps, que la promesse n'est pas résolu.

OriginalL'auteur Fauphi | 2013-12-16