Estou usando alguns dados de um serviço RESTful em várias páginas. Estou usando fábricas angulares para isso. Então, eu preciso obter os dados uma vez do servidor, e toda vez que estou obtendo os dados com aquele serviço definido. Exatamente como variáveis globais. Aqui está o exemplo:
var myApp = angular.module('myservices', []);
myApp.factory('myService', function($http) {
$http({method:"GET", url:"/my/url"}).success(function(result){
return result;
});
});
No meu controlador, estou usando este serviço como:
function myFunction($scope, myService) {
$scope.data = myService;
console.log("data.name"+$scope.data.name);
}
Está funcionando bem para mim de acordo com minhas necessidades. Mas o problema aqui é que quando eu recarreguei na minha página o serviço será chamado novamente e requisições de servidor. Se no meio alguma outra função é executada que é dependente do "serviço definido", está dando o erro como "algo" é indefinido. Portanto, quero esperar em meu script até que o serviço seja carregado. Como eu posso fazer isso? Existe alguma maneira de fazer isso no angularjs?