app.service('cityService',['$http',function($http){
this.get = function(){
$http({
method : 'get',
url : API_SERVER+'city/'
}).success(function(response){
console.log(response);
return response;
}).error(function(response){
console.log(response);
});
};
}
Я пытаюсь использовать службу для извлечения данных с сервера, но проблема заключается в том, что я использую службу для хранения данных в переменной области. я получаю undefined
. Я получаю данные, так как данные отображаются в консоли + служба работает тоже, когда я добавляю контроллер, но данные не сохраняются в любой переменной. Я использовал $timeout
, чтобы отложить проверку переменной, но все равно не повезло. Я также использовал .then()
но показать undefined
для службы, когда я добавить с обслуживанием ...Работа с службами для обработки данных угловая
app.controller('Controller',['cityService',function(cityService){
$scope.temp = {};
$scope.temp = cityService.get();
}]);
Во всяком случае, чтобы передать данные от службы к контроллеру? Примечание: также попытался сохранить данные в переменной службы и вернуть службу переменной
this.var = ''
this.get = function(){
$http({
method : 'get',
url : API_SERVER+'city/'
}).success(function(response){
this.var = response
console.log(this.var);
return this.var;
}).error(function(response){
console.log(response);
});
};
данные хранить в переменной, но в конце концов, не переходя к контроллеру. любое руководство?
$ HTTP вернуть обещание по умолчанию ... проверить angularjs документы ... пытался, но я получаю ошибку ..... тогда() не может быть установлен в не определено. Можно ли показать jsfiddle с рабочим кодом? coz mine is not working –
@ScienCeSubject проверить обновленный ответ & plunkr :) –
это вроде помогло ... изменило мою логику, чтобы добиться того, что я хотел ... но все равно thnx за то, что помог мне –