【发布时间】:2015-02-23 18:20:41
【问题描述】:
我想将一个 JSON 文件加载到工厂中,然后返回它的值。
代码如下:
angular.module('getGuilds', [])
.factory('getGuilds', getGuilds);
getGuilds.$inject = ['$http'];
function getGuilds($http){
var obj = {content:null};
$http.get('guild/guilds.json').success(function(data) {
obj.content = data;
});
return obj;
}
问题是它只返回值为 null 的对象,所以看起来 $http.get 并没有改变 obj.content的值>.
在这之后我做了一个小测试:
$http.get('guild/guilds.json').success(function(data) {
obj.content = data;
});
console.log(obj)
return obj;
}
它返回了这个包含 JSON 数组的对象:{content:null}。
然后我将 console.log 放入 $http.get 请求中。
$http.get('guild/guilds.json').success(function(data) {
obj.content = data;
console.log(obj)
});
猜猜看,它注销了 JSON 文件。有人会帮助我吗?
【问题讨论】:
标签: javascript json angularjs factory