我使用以下内容打电话给我的api:
getBall: function(){
ball = xhttp({
url: '/current',
method: 'get'
}).then(function(data){
return data;
})
return ball;
}
问题是我无法访问父函数中的data
。我尝试分配变量ball
(一个promise对象),但它永远不会让我访问data
。
我想将data
的值返回到父函数(getBall
)。最干净的方法是什么?
答案 0 :(得分:1)
xhttp请求完成后,getBall
函数很可能退出 。因此,data
无法将getBall
传递回.then
。您可以做的最好的事情是将附加的ball
条款附加到ball
,或将getBall
作为承诺传递给.then
的来电者。调用者可以附加自己的subnet 10.2.0.0/16
子句。
另一种方法是使用generators,但是那个和所有其他异步方法(如Promises(甚至是简单的回调))需要超越传统的命令式模型进行思考。