0
我有一個角度控制器應該從數據庫獲取產品,然後對它們執行一些操作。控制器有一個功能,其中有另一個功能。我怎樣才能將從嵌套功能收到的數據返回給控制器?我嘗試過幾乎所有我能想到的事情,似乎沒有任何工作。如何從控制器中的嵌套函數返回數據
search.controller('SearchResultsController', function($scope, $routeParams, $http){
$scope.getAllProducts = function(){ //function 1
var config = {
method: "GET",
url: '/products',
headers: {"Content-Type": "application/json;charset=utf-8"}
};
$http(config).then(function(response) { //function 2
$scope.allProducts = response.data;
console.log($scope.allProducts) // correctly prints products fetched from server
});
$scope.getAllProducts();
console.log($scope.allProducts); //prints undefined
};
};
所以你想同步調用異步方法?你不能。遵守承諾。 – Casey
您可以使用$ q異步運行函數,並在完成處理時返回值(或例外)。 – nutboltu