Это мой контроллер, в котором у меня есть переменная, которую я хочу использовать в своей службе, чтобы получить доступ к некоторым данным JSON с сервера.AngularJS - как передать переменную scope в службу?
Части контроллера, где I:
1) получить ключ API от сервера (работ и регистрирует ключ в консоли):
AuthenticationService.getData()
.then(function(result) {
$scope.apiKey = result;
console.log($scope.apiKey);
});
2) Вы хотите, чтобы передать ключ сервис, чтобы получить доступ к данным:
DrawService.getData($scope.apiKey)
.then(function(result) {
$scope.numbers = result.data;
console.log($scope.numbers);
});
Услуги:
app.factory('AuthenticationService', function($http) {
return {
getData: function() {
return $http.get('http://game.mywebsite.com/start/?token=someNumber&sessionId=someNumber')
.then(function(result) {
return result.data;
}
);
}
}
app.factory('DrawService', function($http) {
return {
getData: function(apiKey) {
var key = apiKey;
console.log(key);
return $http.get('http://game.mywebsite.com/draw/?token='+apiKey)
.then(function(result) {
return result.data;
});
}
}
someNumber - это номер, который мне предоставлен, без ошибок. myWebsite.com - пример веб-сайта, откуда я хочу получить данные JSON.
Итак, как я могу передать $ scope.apiKey на службу без его возврата undefined?
Блестящий! Трюк! – bltzrrr
@bltzrrr рад помочь вам ... спасибо :) –