Мне нужен фильтр, в котором мне нужно сделать вызов $http, а затем вернуть этот ответ. Я пытаюсь использовать угловое обещание, но ничего не работает. Возврат не ждет ответа. Взгляните ниже на мой код. Он возвращает {} , не дожидаясь ответа $http. Мне нужно это только с помощью фильтра. Идея состоит в том, чтобы отделить его от Controller , чтобы его можно было использовать где угодно позже.
.filter('filterXML',['testOne','$sce',function(testOne, $sce){
return function(url){
return testOne.getTest(url).then(function(data){
return data;
});
}
}])
.factory('testOne', ['$http', function($http){
return {
getTest: function(url){
return $http.get(url).success(function(data){
console.log(data)
return data;
})
}
}
}])
Цель: {{ 'http://rss.cnn.com/rss/cnn_topstories.rss' | фильтрXML}}
Таким образом, он вернет все данные из этого RSS-канала.
Я не хочу использовать контроллер . Идея состоит в том, чтобы сделать отдельный модуль и вызывать его в любом месте приложения.
Любая помощь будет оценена. Спасибо
.then
в своем контроллере также для работы с возвращенным объектом обещания, который будетcall
edback
- person vinayakj   schedule 11.07.2015