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

时间:2017-07-01 17:26:22

标签: reactjs firebase firebase-authentication mobx mobx-react

我正在开发基于app的react + mobx,后端使用firebase。 目前在应用程序启动时,我需要检查用户是否已登录。 我用firebase.auth()。onAuthStateChange监听器来做这件事,但因为它的异步功能 - 第一个响应总是为空。 所以我当前的解决方案是显示一些加载消息并将setInterval函数与componentWillMount生命周期中的状态检查放在一起。 问题是 - 这个问题还有更优雅的解决方案吗?

1 个答案:

答案 0 :(得分:2)

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

在渲染时,让您的组件考虑state.authenticatedUser并呈现"身份验证待定"或"验证用户"