我有控制器和函數getData,如圖所示。問題是for循環之外的$ scope.results沒有內容。在第二個http.get請求中,它有內容。
appControllers.controller('MyaSellerOrderCtrl', ['$scope', '$rootScope', 'Order', '$http',
function($scope, $rootScope, Order, $http) {
$scope.results = [];
$scope.getData = function() {
$http.get('api/orders/business/?user_id=' + $rootScope.user.user_id).success(function(data){
for (var i = 0; i < data.length; i++) {
$http.get('api/orders/seller/?business_id=' + data[i].business_id).success(function(data1){
// console.log(data1);
$scope.results[i] = data1;
});
}
console.log($scope.results);
});
};
$scope.getData();
}]);
,由於AJAX工作異步 – 2014-10-04 08:44:50
另外,你是否打開承諾?最後,$ http應該真正進入一個單獨的角度服務,這將遵循良好的習慣,並減輕你的一些麻煩。 – Zlatko 2014-10-04 23:29:04
我是newje to angularjs。那麼我將如何做到這一點 – 2014-10-06 05:25:29