很抱歉令人困惑的标题,基本上我有一个看起来像这样的json文件指向其他位置:
{
"link": [
{
"href": "some-external-resource",
"title": "services-path"
}
]
}
我真正的问题是让对象的href不能异步加载到Angular服务中。以下是我对上述json文件的请求:
var servicesPath = $http({
url: 'resource-directory.json',
method: "GET"
}).success(function(data){
return $filter('filter')(data.link, {title: "services-path"})[0].href;
});
console.log(servicesPath);
我知道返回的是我想要的,但是控制台日志返回标准的“然后,捕获,最后,成功,错误”对象函数,这意味着数据在我需要时不存在。如何处理我的请求,以便变量包含信息?
答案 0 :(得分:0)
由于您有异步调用,因此在调用完成(成功)后将返回该值
$http({
url: 'resource-directory.json',
method: "GET"
}).success(function(data){
console.log('response data', data);
var theHref = $filter('filter')(data.link, {title: "services-path"})[0].href;
console.log('theHref', theHref); // value shows here
}).error(function(errorResp){
console.log('error');
});