Я пытаюсь создать обещание в AngularJS: в основном мне нужно вызвать функцию session.state()
, которая делает http-запрос, а затем возвращает некоторые данные.Я не могу сразу получить доступ к данным, потому что они все еще не определены и еще не возвращены, поэтому я попытался создать обещание.
Это то, что я пробовал до сих пор:
Это гдеЯ звоню session.state()
:
session.state()
.then(function(data){
if (data['state']) {
self.plan = data['plan'];
self.pool_interface = data['pool_interface'];
}
callback(data['state']);
});
и вот session.state()
сам по себе:
self.state = function() {
$http.get(self.baseUrl + 'api/session/state')
.then(function(response) {
var dfd = $q.defer();
dfd.resolve(response.data);
return dfd.promise;
});
};
Два куска кода размещены в отдельных сервисах.
ИтакПока я получаю только ошибку «Ошибка: сессия.state (...) не определена» из консоли браузера.Что я делаю не так?