Javascript AngularJS承诺已解决,但无法访问数据
工厂Javascript AngularJS承诺已解决,但无法访问数据,javascript,angularjs,promise,angular-promise,Javascript,Angularjs,Promise,Angular Promise,工厂 var promise = GetQuestions.quote.get(); console.log(promise); promise.$promise.then(function(quote) { $scope.quotes = quote; console.log($scope.quotes); for( quote in $scope.quotes){ console.log(quote.cite); } }); 这里是console.log(承诺):
var promise = GetQuestions.quote.get();
console.log(promise);
promise.$promise.then(function(quote) {
$scope.quotes = quote;
console.log($scope.quotes);
for( quote in $scope.quotes){
console.log(quote.cite);
}
});
这里是console.log(承诺):
下面是console.log($scope.quotes):
和console.log(quote.cite)日志未定义
问题是:
我的问题是,我无法访问“cites”,承诺应该已经解决,但我似乎无法正确访问数据。我尝试过做promise.then()(而不是promise.promise.then()),但是我得到一个错误,告诉我promise.then()不是一个函数。我不知道这是为什么。有什么帮助吗?请尝试使用列表中var的
语法,而不是
[$promise: Promise, $resolved: false]
列表中变量的不应用于迭代数组。它的目的是迭代对象属性。当您使用它在数组上迭代时,您经常会得到奇怪的行为
看
[$promise: Promise, $resolved: false]
$scope.quotes.forEach(function(quote) {
console.log(quote.cite);
});