AngularJs rufen eine interne Servicefunktion von sich aus auf

Ich habe einen einfachen Dienst aufgebaut, der mehrere Anfragen stellt. Der Dienst hat zwei Methoden. Ich kann innerhalb des Dienstes keine Methode von einer anderen aufrufen.

Plunkr:http://plnkr.co/edit/2fERik4uTxbxlVOhncMd?p=preview

app.factory('Report', ['$http', function($http){
var Authors = {

    reports : [],
    requests :[{'url':'data/data.cfm','response':'first'},
               {'url':'data.json','response':'second'},
               {'url':'data.json','response':'third'},
               {'url':'data.json','response':'forth'}],


getReport : function(target, source, response, callback) {
    return $http({  url:source, 
                    method:"POST", 
                    params:{url : target}
                }).success(function(result) {
                    $scope.progress = response;
                    angular.extend($scope.user, result)
                    console.log($scope.user)
      }
      ).error(function(error){
                    $scope.progress = response
                })
},

    startQueue : function (target) {
        var promises = [];
        this.requests.forEach(function (obj, i) {
            console.log(obj.url)
            promises.push(getReport(target, obj.url, obj.response, function(value){
                reports.push(value);
                console.log(value)
            }));
        });
        $q.all(promises).then(function () {
            console.log("Finito");
        },function(error){
            console.log("errori")
        });
    }

};

return Authors;
}])

Wenn ich versuche, getReport aus startQueue heraus aufzurufen, erhalte ich die Fehlermeldung: getReport ist nicht definiert.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage