web-dev-qa-db-ja.com

登録メールがFirebaseで確認されているかどうかを知る方法は?

onSubmit(formData) {
if(formData.valid) {
  console.log(formData.value);
  this.af.auth.createUser({
    email: formData.value.email,
    password: formData.value.password
  }).then(
    authState => {
    authState.auth.sendEmailVerification();
    this.router.navigate(['/login'])
  }).catch(
    (err) => {
    console.log(err);
    this.error = err;
  })
}
}

Firebaseでは、上記のコードのようにSendEmailVerficationを設定すると、メールは正常に送信されます。ただし、私のアプリでは、確認メールをクリックしないユーザーとクリックしたユーザーの間に違いはありません。違いが生じる・異なる?

6
pyy

ドキュメントによると、 User オブジェクトには emailVerified プロパティが含まれています。

したがって、 signInWithEmailAndPassword メソッドのpromiseが解決されるユーザー-または onAuthStateChanged メソッドのコールバックに渡されるユーザー-を検査できます。 emailVerifiedの値を確認できます。

14
cartant

firebase.auth().currentUser.emailVerifiedを使用できます

これにより、trueまたはfalseが返されます。

7
Yohan E

ユーザー確認の状態について、firebaseデータベースに属性を追加できます link

1
Oussema Aroua