【发布时间】:2015-03-17 19:59:10
【问题描述】:
我有一个简单的工厂,它获取数据文件并将其保存到 service.data:
angular.module("tiki").factory("editTiki", ["$http", function($http){
var service = {}
service.data = {}
service.getTikis = function(){
$http.get("data/tikis.json").success(function(tikis){
console.log(tikis)
service.data = tikis
})
}
return service
}])
然后,在控制器中,我将其分配给 $scope。这当然首先是空的,但是当 $http 解析时,它应该更新我的工厂,然后用返回的数据更新 service.data 对象。
angular.module('tiki').controller("tiki.controller.settings.edit", ["$scope", "editTiki", function($scope, editTiki){
//should return the tikis
$scope.preview = editTiki.data
editTiki.getTikis()
$scope.showEditTikiObject = function(){
console.log($scope.preview)
}
}])
但是,我有这个函数来测试数据的内容,它返回一个空对象。这是为什么呢?
【问题讨论】:
标签: angularjs http asynchronous factory