Firebase 和 React - 检查用户身份验证状态

Firebase and React - check user auth status

我正在开发基于应用程序的 react+mobx,并作为后端使用 firebase。 目前在应用程序启动时,我需要检查用户是否已登录。 我正在使用 firebase.auth().onAuthStateChange 侦听器执行此操作,但因为它是异步函数 - 第一个响应始终为空。 所以我目前的解决方案是显示一些加载消息,并将带有状态检查的 setInterval 函数放在 componentWillMount lifehook 中。 问题是-这个问题有没有更优雅的解决方案?

在调用 firebase.auth().onAuthStateChange 之前,将您的状态修改为:state.authenticatedUser: 'pending'。让您的观察者在调用后将该状态更改为真实用户信息。

渲染时让您的组件考虑 state.authenticatedUser 并渲染 "authentication pending" 或 "authenticate user"