Вот мой метод внутри контроллера, я хочу получить доступ к $ scope.oldcats за пределами данного метода. Использование console.info($scope.oldcats);
внутри метода, выводит данные, но используя console.info($scope.oldcats);
внешний функция дисплей undefined
.
$scope.loadPost = function() { //Issues a GET request to /api/post/:id to get a Post to update
$scope.posts = Post.get({ id:$stateParams.id}, function(response){
$scope.posts = response.data;
$scope.posts.selcats = response.data.categories;
var cats = $scope.posts.categories;
$.each(cats, function(arrayID,group) {
$scope.allCats.push(group.id);
});
$scope.oldcats = $scope.allCats; // <- i want to access it
console.info($scope.oldcats); // <- output displays data
});
};
$scope.loadPost(); // Load a Post which can be edited on UI
console.info($scope.oldcats); // <- output display undefined
Возможный дубликат [Как я вернуть ответ от асинхронного вызова?] (http://stackoverflow.com/questions/14220321/how-do-return-the-response-from-an-asynchronous-call) – Grundy