在 Firebase 的 onAuthStateChanged() 中使用 async/await 的最佳方法是什么?

chi*_*628 1 javascript async-await firebase reactjs firebase-authentication

我在 React Native 中使用带有 async/await 的 Firebase 身份验证。我正在寻找一种更好的方法来等待 firebase 函数。所以我的问题是在内部使用 async/await 的最佳方法是什么firebase.auth().onAuthStateChanged()

现在,我以这种方式实现它。在里面创建一个异步函数onAuthStateChanged()并调用它自己。就像下面的例子......但是,我觉得它看起来很奇怪。

firebase.auth().onAuthStateChanged(user => {
  const asyncFunc = async () => {
    await doSomething();
  }

  asyncFunc();
});
Run Code Online (Sandbox Code Playgroud)

有没有更好的方法来实现它?

谢谢您的回答。

zem*_*mil 7

firebase.auth().onAuthStateChanged(async user => {
  const data = await getData();
  const action = await doSomething();
  // etc.
});


// also you can use
async function asyncHandler(user) {
    const data = await doSomething();
}

firebase.auth().onAuthStateChanged(asyncHandler);
Run Code Online (Sandbox Code Playgroud)