在VS代码“调试控制台”中,我可以在调试JavaScript代码(包括运行函数)时,在调试会话期间计算代码上的表达式。不过,我好像跑不动了
async
功能,甚至当我使用生命的时候,等等。
我有以下代码:
const axios = require('axios');
async function getUrl() {
const response = await axios.get('http://example.com/');
return response.data;
}
async function main() {
const response = await getUrl();
console.log(response);
}
main();
我在
async function main() {
第行,然后运行VS代码调试器。然后我试着运行
getUrl
在调试控制台中以不同的方式运行,例如
getUrl()
,
getUrl().then((data) => data)
,和
(async () => getUrl())()
,全部返回
Promise { pending }
).
main()
返回相同的值(如果在函数定义之后运行)。这些方法都不会打印函数的返回值。
我也试过了
await getUrl()
,它返回
SyntaxError: await is only valid in async function
.
我知道我可以在代码中输出我想要的函数
console.log
,但我正在寻找一个解决方案,该解决方案专门使用调试控制台来打印使用
await
功能。
因此,当函数是
异步
?