Я написал эту функцию Fire Auth пару месяцев назад, но когда я попробовал ее сегодня, она вернула мне следующую ошибку:
ОШИБКА TypeError: Невозможно прочитать свойство 'uid' из null
Я не могу понять, где я ошибся, потому что я не изменил ни один код.
Пользователь успешно вошел в систему в соответствии с Консолью Firebase.
Код:
login.ts, за которым следует login.html
import { Component } from '@angular/core';
import { IonicPage, NavController, ToastController, NavParams } from 'ionic-angular';
//Firebase imports
import { AngularFireAuth } from 'angularfire2/auth';
//Model import
import { User } from '../../models/user.interface';
//Page import
import { HomePage } from '../home/home';
@IonicPage()
@Component({
selector: 'page-login',
templateUrl: 'login.html',
})
export class LoginPage {
oldUser = {} as User;
constructor(
private afAuth: AngularFireAuth,
public navCtrl: NavController,
public navParams: NavParams,
private toast: ToastController) {
}
async login(oldUser: User) {
try {
const result = this.afAuth.auth.signInWithEmailAndPassword(oldUser.email, oldUser.password);
if (result) {
this.navCtrl.setRoot(HomePage);
this.toast.create({
message: `We're all given the same hours in a day. Are you ready to maximise yours?`,
duration: 3000
}).present();
}
}
catch(e) {
this.toast.create({
message: `Let's try again: ` + `${e}`.substr(7),
duration: 2000
}).present();
}
}
}
<div class="list">
<ion-item>
<ion-input class="title" type="email" placeholder="Email Address" [(ngModel)]="oldUser.email"></ion-input>
</ion-item>
<ion-item>
<ion-input class="title" placeholder="Password" clear-input type="password" [(ngModel)]="oldUser.password"></ion-input>
</ion-item>
</div>
<button ion-button (click)="login(oldUser)">LOGIN</button>
Пожалуйста, помогите !!Спасибо!