从API端点引入多个数据时出现问题。 对于$ q.all方法
中的值,结果未定义$http.get('url').success(function(data, status, headers, config) {
$scope.data1= data;
})
$http.get('url').success(function(data, status, headers, config) {
$scope.data2= data;
})
$http.get('url').success(function(data, status, headers, config) {
$scope.data3= data;
})
$http.get('url').success(function(data, status, headers, config) {
$scope.data4= data;
})
$q.all([$scope.data1, $scope.data2, $scope.data3, $scope.data4]).then(function(values) {
$scope.data= values;
});
答案 0 :(得分:3)
$q.all
需要一系列承诺,所以你必须做这样的事情。
$scope.promise1 = $http.get('url');
$scope.promise2 = $http.get('url');
$scope.promise3 = $http.get('url');
$scope.promise4 = $http.get('url');
$q.all([$scope.promise1, $scope.promise2, $scope.promise3, $scope.promise4]).then(function (values) {
$scope.data = values;
});