React Native中的Firebase Auth持久性

时间:2017-10-13 17:14:31

标签: reactjs firebase react-native expo

我正在使用Firebase电子邮件+ pw登录我的React Native应用程序,但在应用程序关闭并重新打开后,登录似乎不会持续存在。我在文档中读到默认是持久化的,所以我不确定为什么它不是那样的行为?

我在componentWillMount上使用以下内容:

this.state.dbh.auth().onAuthStateChanged(function(user) {
        if (user) {
            this.state = {
                user: user
            }
        }

我也在使用Expo开发 - 这会对持续登录产生影响吗?

1 个答案:

答案 0 :(得分:3)

这是Firebase v4.5.1中引入的回归,如here所述。

解决方案:

  1. 降级至Firebase v4.5.0
  2. 使用npm start -- --reset-cache
  3. 重新启动Expo

    修改

    问题已在Firebase v4.5.2修复。

    1. 升级到Firebase v4.5.2
    2. 更改Firebase导入

      // from
      import * as firebase from 'firebase/app';
      import 'firebase/auth';
      
      // to
      import firebase from 'firebase';
      
    3. 如上所述here