J'utilise des données provenant d'un service RESTful dans plusieurs pages. J'utilise donc des fabriques angulaires pour cela. Ainsi, je dois obtenir les données une fois du serveur, et chaque fois que je reçois les données avec ce service défini. Tout comme les variables globales. Voici l'exemple :
var myApp = angular.module('myservices', []);
myApp.factory('myService', function($http) {
$http({method:"GET", url:"/my/url"}).success(function(result){
return result;
});
});
Dans mon contrôleur, j'utilise ce service comme.. :
function myFunction($scope, myService) {
$scope.data = myService;
console.log("data.name"+$scope.data.name);
}
Cela fonctionne bien pour moi, conformément à mes exigences. Mais le problème est que, lorsque je recharge ma page web, le service est appelé à nouveau et demande le serveur. Si entre temps une autre fonction s'exécute qui dépend du "service défini", elle donne une erreur comme "quelque chose" est indéfini. Donc je veux attendre dans mon script jusqu'à ce que le service soit chargé. Comment puis-je faire cela ? Existe-t-il un moyen de le faire dans Angularjs ?