Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript AngularJS承诺已解决,但无法访问数据_Javascript_Angularjs_Promise_Angular Promise - Fatal编程技术网

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);
});