为什么异步函数返回带有挂起状态的 Promise 而不是值?
代码定义了一个异步函数 AuthUser,它调用google.login() 并返回它产生的承诺。当函数被调用时,promise 会被记录为待处理状态,因为它的结果尚未被解析。
解决方案:
要访问 Promise 的解析值,它必须与 .then() 链接,即使它仍然处于挂起状态。例如:
AuthUser(data) .then((token) => { console.log(token); // "Some User token" });
详细信息:
Promise 是单向操作。一旦解析,它们的值就会传递给 .then() 或 .catch() 方法,无论它们的状态如何(已解析或待处理)。 .then() 的返回值是 Promise 的解析值。
在提供的代码中,AuthUser 直接返回 Promise,使其解析值在调用 .then() 之前不可用。
其他见解:
以上是为什么异步函数返回待处理的 Promise 而不是立即值?的详细内容。更多信息请关注PHP中文网其他相关文章!