2016-08-16 9 views
1

Warum ist meine $scope.aux leer, während die Antwort aucally da ist?angularjs Service und Antwort

Antwort:

enter image description here

Ich habe folgend in der Fabrik:

o.getfirm = function() { 
    return $http.post('/firms', null, { 
    headers: {Authorization: 'Bearer '+auth.getToken()} 
    }).then(function(response){ 
     console.log("getting firm"); 

     console.log(response.data); 

    return response.data; 
    }); 
}; 

Anrufer:

$scope.aux = testservice.getfirm(); 

console.log("checking"); 

console.log($scope.aux); 

Antwort

2

Weil getfirm ein Versprechen zurück. Um Daten versuchen Sie dies:

testservice.getfirm().then(function(value){ $scope.aux = value }); 
+0

Dank! wird antworten wenn es möglich ist. Hast du auch Zeit für ein anderes Thema? – maria

+0

Stellen Sie Ihre Frage und ich werde versuchen, schnell zu antworten – Silvinus

+0

ist hier: http://StackOverflow.com/Questions/38957777/schema-hasst-been-registred-for-Model-mean-stack – maria

1

können Sie $ q-Bibliothek verwenden Fehler behandeln auch

o.getfirm = function() { 
var deferred = $q.defer(); 
return $http.post('/firms', null, { 
    headers: {Authorization: 'Bearer '+auth.getToken()} 
}) 
.then(function(response){ 
    console.log("getting firm"); 

    deferred.resolve(response.data); 

return response.data; 
}) 
.catch(function(error){ 
    deferred.reject(error); 
}); 
return deferred.promise(); 

}; 

Und Controller:

testservice.getfirm().then(function(value){ $scope.aux = value }) 
        .catch(function(error){//Handle error})