Javascript $http调用成功时未绑定到$scope.data?

Javascript $http调用成功时未绑定到$scope.data?,javascript,http,angularjs,Javascript,Http,Angularjs,调用success时,$scope.items=data出现问题。我使用的是这个JSFIDLE:但是,我没有使用硬编码项,而是: $scope.items=$http({method: 'GET', url: '/test/database/two'}). success(function(data, status, headers, config) { return data; }). error(function(data, status, headers, c

调用success时,$scope.items=data出现问题。我使用的是这个JSFIDLE:但是,我没有使用硬编码项,而是:

   $scope.items=$http({method: 'GET', url: '/test/database/two'}).
   success(function(data, status, headers, config) {
   return data;
   }).
   error(function(data, status, headers, config) {
   $scope.status=status;
   });
并尝试了以下方法:

$http({method: 'GET', url: '/test/database/two'}).
success(function(data, status, headers, config) {
$scope.items=data;
}).
error(function(data, status, headers, config) {
$scope.status=status;
});

当我在success函数中设置警报时,我看到长度为25,因此我知道我正在获取数据。但是,当我在运行$http之后检查$scope.items时,在我离开success函数之后,我会得到一段未定义的时间。就像它设置了自己,并在范围之外丢失了设置?非常感谢您的帮助。

$http
运行时,它将立即返回
[]
{}
,具体取决于是否设置了
isArray
。传递给
success
error
的函数将在稍后收到数据时执行。当收到此数据时,您先前的
[]
{}
将被数据填充


听起来您正在运行
$http
,并在从服务器检索数据之前对其进行测试。如果您想使用数据,那么您的相关代码可能应该位于
success
函数中,以推迟工作,直到您拥有要使用的数据。

$http
运行时,它将立即返回
[]
{}
,具体取决于
是否设置了isArray
。传递给
success
error
的函数将在稍后收到数据时执行。当收到此数据时,您先前的
[]
{}
将被数据填充


听起来您正在运行
$http
,并在从服务器检索数据之前对其进行测试。如果您想使用数据,那么您的相关代码可能应该在
success
函数中,以推迟工作,直到您拥有要处理的数据。

尝试将对$http()的调用包装到$scope中。$apply()我这样做了:$scope.apply($scope.items=$http({method:'GET',url:'})。成功(函数(数据,状态,标题,配置){return data;}).error(函数(数据,状态,标题,配置){$scope.status=status;});一旦我这样做了,我就收到了:TypeError:Object#没有“apply”方法这是在函数ctrlReadtry中完成的,将调用包装到$http()在$scope.apply()中,我执行了以下操作:$scope.apply($scope.items=$http({method:'GET',url:'})。成功(函数(data,status,headers,config){return data;})。错误(函数(data,status,headers,config){$scope.status=status;});一旦我这样做了,我收到:TypeError:Object#没有方法“应用”,这是在函数CtrlRead中完成的。谢谢你的解释,它确实帮助我理解了发生的事情。以及答案,顺便说一句。很高兴你破解了它。如果你觉得这个答案是解决方案,请单击大的在左边打勾。这将有助于将注意力集中在其他未回答的问题上。感谢您的解释,这确实有助于我理解正在发生的事情。以及答案,顺便说一句。很高兴您破解了它。如果您认为此答案是解决方案,请单击左边的大勾来标记它。这将有助于解决问题ep关注其他未回答的问题。