我有这行代码:如何从回调中获取值?
let message = channel.consume(queue, msg => {
console.log('Return this in the "message" variable', msg.content);
});
当我试图登录的message
的价值,它并不等同于msg.content
但它会从consume
方法的返回值。为了让我从回调中获得正确的价值,什么是解决方法。
感谢
我有这行代码:如何从回调中获取值?
let message = channel.consume(queue, msg => {
console.log('Return this in the "message" variable', msg.content);
});
当我试图登录的message
的价值,它并不等同于msg.content
但它会从consume
方法的返回值。为了让我从回调中获得正确的价值,什么是解决方法。
感谢
您不能“返回”回调的值。而且,这样做没什么意义,因为在代码执行之后,该代码将在执行回调之前执行。
虽然它不是“返回”的值,但可以使用Promise。
如果您可以从ES7进行转储,则可以使用async-await,它允许您使用await
在async
函数内使用同步代码调用异步函数。
我根本不关注你问的问题。我不知道'channel.consume()'返回并发送到回调函数,所以你必须先解释它。然后,解释你到底想要发生什么。 – Brad
有人需要为包含协程,异步/等待和承诺的异步函数编写新的通用答案。 – slebetman