我试图将两个异步函数链接在一起,因为第一个具有条件返回参数,导致第二个运行或退出模块。但是,我发现规格中找不到奇怪的行为。
async function isInLobby() {
//promise.all([chained methods here])
let exit = false;
if (someCondition) exit = true;
}
这是我的代码的混帐摘要(您可以在此处看到完整的范围),它只是检查玩家是否已经在大厅中,但这无关紧要。
接下来,我们有这个异步功能。
async function countPlayer() {
const keyLength = await scardAsync(game);
return keyLength;
}
如果,则无需运行此功能exit === true
。
我试着做
const inLobby = await isInLobby();
我希望可以等待结果,以便可以inLobby
有条件地运行countPlayer
,但是我收到了没有具体细节的typeerror。
为什么您不能await
将async
功能超出功能范围?我知道这是一个糖承诺,因此必须将其链接到其中,then
但是为什么countPlayer
我可以等待另一个诺言,但是在外面,我却不能await
isInLobby
呢?
await isInLobby()
,以及如何inLobby
使用?另外,在哪里/如何countPlayer
称呼?