AngularJs: Niech metoda zwróci synchronicznie, gdy wewnętrznie wywoła $ http lub $ resource
Czy istnieje sposób na oczekiwanie na obietnicę, aby można było uzyskać rzeczywisty wynik z tego i zwrócić to zamiast zwracać samą obietnicę? Myślę o czymś podobnym do tego, jak C # czeka na słowo kluczowe z Zadaniami.
Oto przykład, dlaczego chciałbym mieć metodę taką jak canAccess (), która zwraca prawdę lub fałsz zamiast obietnicy, aby można było jej użyć w instrukcji if. Metoda canAccess () spowodowałaby wywołanie AJAX przy użyciu $ http lub $ resource, a następnie w jakiś sposób poczeka na rozwiązanie obietnicy.
Wyglądałoby to mniej więcej tak:
$scope.canAccess = function(page) {
var resource = $resource('/api/access/:page');
var result = resource.get({page: page});
// how to await this and not return the promise but the real value
return result.canAccess;
}
Czy i tak to zrobić?
Dzięki.