我是Angular的新手,我正在尝试设置DATA(script.js文件)varible以从JSON文件(books.json)获取数据。我回顾了一些帖子,但我无法理解它如何应用于工厂类型的结构。
谢谢! Plunker-Code
答案 0 :(得分:0)
$http.get
返回一个承诺。从工厂返回承诺,然后使用then
在控制器中解析它。
在你的工厂
app.factory("bookService", ["$rootScope","$http",
function($rootScope,$http,$q) {
var getBooks = function(){
return $http.get('books.json'); // returns a promise
}
return {
getBooks: getBooks
};
}]);
在你的控制器中
app.controller("listController", ["$scope", "$location", "$routeParams", "bookService",
function($scope, $location, $routeParams, bookService) {
bookService.getBooks().then(function(data){ // resolve promise using then()
// successcallback
$scope.books = data;
});
}
]);