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