2016-01-20 80 views
0

如何访问promises回调中的用户对象?承诺中的Javascript范围

我试图绑定它没有成功。

const promises = User.find(req.user._id).exec(); 
promises.then(function (user) { 
    noAccessFunction().then(function (customer) { 
    // HERE 
    user.save(); 
    }); 
}); 

回答

1

承诺不是回调!将它变为好像是一系列价值观。也许是这样的:

const promises = User.find(req.user._id).exec(); 
promises.then(function (user) { 
    return myfunction().then(function (customer) { 
    return user.save(); 
    }); 
}); 

承诺也可以变平:

const promises = User.find(req.user._id).exec(); 
promises.then(function (user) { 
    return myfunction(user); 
}) 
.then(function (customer) { 
    return customer.save(); 
}); 

在任何情况下,上面的代码是猜测,因为你没有提供足够的信息,以要发生什么。