L'obtention de données à partir d'un service web avec Angular.js

Im essayant d'obtenir des données dans un format Json à partir d'une distance à l'aide de WS Angulaire et im avoir quelques difficultés.
Les données proviennent du service web correctement mais je ne peux pas l'utiliser à l'intérieur du contrôleur.
Pourquoi est-ce?
Angulaire Code:

var booksJson;
var app = angular.module('booksInventoryApp',[]);

//get data from the WS
app.run(function ($http) {
    $http.get("https://SOME_API_PATH").success(function (data) {
        booksJson = data;
        console.log(data);  //Working
    });
});

app.controller('booksCtrl', function ($scope) { 
    $scope.data = booksJson;
    console.log($scope.data); //NOT WORKING
});

HTML:

<section ng-controller="booksCtrl">
<h2 ng-repeat="book in data">{{book.name}}</h2>
</section>
à l'aide d'un run de bloc? pourquoi pas un .service qui renvoie une promesse? puis tout simplement inject que le service dans votre controller(s).
Pourquoi devrais-je utiliser un service?
Vous pouvez utiliser un service, pour plusieurs raisons. Pour n'en nommer que quelques-uns, l'injection de dépendance, de modularité, maintenable, et fournit une couche d'abstraction. Ça dépend si. Si tout ce que vous allez jamais à faire est de recevoir une liste de tous les livres, puis un service est exagéré.

OriginalL'auteur Vandervidi | 2015-06-03