Ionic / Angular / FIrebase: свойство 'emailVerified' не существует для типа 'UserCredential' - PullRequest
0 голосов
/ 19 октября 2018

У меня ошибка, я пытался создать логин в Ionic 3 Framework с аутентификацией Angular и Firebase.Проблема в том, что я не знаю, как исправить ошибку.

сообщение об ошибке

Typescript Error

Property 'emailVerified' does not exist on type 'UserCredential'.

src/pages/login/login.ts

Код Login.ts

import { Component } from '@angular/core';
import { IonicPage, NavController, AlertController } from 'ionic-angular';
import { AngularFireAuth } from 'angularfire2/auth';

@IonicPage()
@Component({
    selector: 'page-login',
    templateUrl: 'login.html',
})
export class LoginPage {
    user: any = {}

    constructor(private navCtrl: NavController, private afAuth: AngularFireAuth, private alertCtrl: AlertController) {
    }

    login() {
        this.afAuth.auth.signInWithEmailAndPassword(this.user.email, this.user.password).then(data => {
            if (!data.emailVerified) {
                let alert = this.alertCtrl.create({
                    title: 'Failed',
                    message: 'Email has not been verified',
                    buttons: ['OK']
                })
                alert.present()
            } else {
                this.navCtrl.setRoot('HomePage')
            }
        }).catch(err => {
            let alert = this.alertCtrl.create({
                title: 'Failed',
                message: err.message,
                buttons: ['OK']
            })
            alert.present()
        })
    }

    toRegister() {
        this.navCtrl.push('RegisterPage')
    }

    toResetPassword() {
        this.navCtrl.push('ResetPasswordPage')
    }

}

1 Ответ

0 голосов
/ 29 октября 2018

Должно быть data.user.emailVerified.signInWithEmailAndPassword возвращает объект UserCredential.

...