下面是我的代码...
async function getItemDetalil(url) {
const $ = await request(url, (err, res, body) => {
return cheerio.load(body);
});
console.log($);
}
为什么我的“$”未定义? 我认为它将是一个 Cheerio 对象?
最佳答案
Why async/await variable return undefined?
await x
计算为 x
的值,或者,如果该值是一个 Promise,则计算为 Promise 解析为的值。
示例:
// Value
(async function() {
console.log('Normal value', await 42);
}());
// Promise resolution
(async function() {
console.log('From promise:', await Promise.resolve(42));
}());
如果$
是undefined
,那么request()
要么返回undefined
,要么返回一个解析为未定义
(不太可能)。查看其文档或源代码以了解到底发生了什么。
I assume it will be a cheerio object?
它只会是 cherrio 对象iff request
实际上返回一个 cherrio 对象或解析为 cherrio 对象的 Promise。
How do I convert an existing callback API to promises?可能会帮助您解决实际的编码问题。
关于javascript - 为什么 async/await 变量返回未定义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46715291/