Как войти в оффлайн в FireStore - PullRequest
0 голосов
/ 04 апреля 2020

У меня включен enabledPersistence (), как указано в документации к моему app.ts.

import { AngularFirestoreModule } from '@angular/fire/firestore';
 imports: [ AngularFirestoreModule.enablePersistence()]

После того, как я войду в систему и отключу свою сеть, приложение будет работать в автономном режиме и отключится при повторном подключении к сети.

Моя функция входа в систему:

  async login() {
          await this.presentLoadings();
            const { email, password } = this
            try { 

              const res = await this.afAuth.auth.signInWithEmailAndPassword(email , password)

              if(res.user) {
                this.user.setUser({
                  email,
                  password,
                  uid: res.user.uid
                })
                this.router.navigate(['/tabs/dashboard'])
              }

            } catch(err) {
              this.presentToast(err.message);
            }
            finally
            {
              this.loading.dismiss();
            }
          }

1 Ответ

0 голосов
/ 04 апреля 2020

Невозможно войти в систему нового пользователя без подключения inte * 1012.

При этом, если пользователь уже вошел в систему, Firebase Authentication автоматически восстановит его состояние аутентификации, когда приложение перезапускается, и будет работать при отсутствии сетевого подключения.

Для обнаружения этого автоматического входа c, используйте onAuthStateChange listener :

firebase.auth().onAuthStateChanged(function(user) {
  if (user) {
    // User is signed in, so set the state, and navigate to the dashboard.
  } else {
    // No user is signed in.
  }
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...