我的代码目前采用以下形式:
var x = 1;
var promise = new Promise(function(resolve, reject) {
request(url, function(err, res, body) {
if (x == 1)
resolve(body);
});
});
为什么在这种情况下x未定义?
如果我拒绝承诺(不需要),就像这样:
var x = 1;
request(url, function(err, res, body)) {
if (x == 1)
// use body
});
然后我能够成功访问x。我如何保留承诺,但仍能访问x?