0

Ich versuche, ein Firebase-Konto in meiner Anwendung zu überprüfen.Firebase-Handle E-Mail-Verifizierung

Ich habe das functon für das Versenden der Bestätigungs-E-Mail eingefügt und nachdem die Person den Link in der E-Mail angeklickt hat, ist der Bestätigungsstatus in Firebase wahr.

Mein Problem ist jetzt, dass ich die Änderung in meiner ionischen 2 Anwendung nicht erhalten kann. Zum Beispiel habe ich versucht, die Verifizierung Zustand in der onAuthStateChange Methode von Feuerbasis und schreiben Sie es auf meine Datenbank mit der Updateuser-Funktion zu erhalten:

firebase.auth().onAuthStateChanged(user => { 
    this.zone.run(() => { 
    if (!user) { 
     this.rootPage = Login; 
    } else { 
     this.rootPage = HomePage; 
     auth.setUser(user); 

     if(user.emailVerified){ 
     this.auth.updateUser({verified: true}); 
     } 
    } 
    });  
}); 

Wenn ich registriere einen Benutzer der emailVerified falsch sind, nachdem ich auf dem Link klicken Melden Sie sich von der App ab und melden Sie sich erneut an, der Status ist wahr, also sollte alles in Ordnung sein. Nun meine Frage ist, wenn ich die Änderung der E-Mail verifiziert "im laufenden Betrieb", so dass der Benutzer nicht neu anmelden muss, wie ein Eventlistener oder etwas, der aufgerufen wird, wenn der E-Mail Verifizierter Status in Firebase geändert wird.

Wäre schön, wenn jemand eine Idee oder einen tipp für mich hat, um dieses Problem

Antwort

0

zu lösen Sie das Benutzerprofil neu zu laden können:

user.reload().then(... 

https://firebase.google.com/docs/reference/js/firebase.User#reload Siehe

+0

Ja, aber das Problem ist, dass Funktion sollte aufgerufen werden, wenn der Benutzer auf den Link in der E-Mail klickt und der Wert emailified eingestellt ist. – Stevetro

+0

Wie die firebase.database.ref.on (value) -Funktion, die jedes Mal aufgerufen wird, wenn etwas geändert wird – Stevetro