【发布时间】:2019-03-28 09:28:19
【问题描述】:
我正在尝试在 AngularJS 中创建一个承诺:基本上我需要调用函数 session.state(),它发出一个 http 请求,然后返回一些数据。我无法立即访问数据,因为它们仍未定义且尚未返回,因此我尝试构建一个 Promise。
这是我迄今为止尝试过的:
这是我打电话给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;
});
};
这两段代码放在不同的服务中。
到目前为止,我只从浏览器控制台收到“错误:session.state(...) 未定义”错误。我做错了什么?
【问题讨论】: