Я пытаюсь связать Аутентификацию Firebase со списками Firestore, чтобы добавить дополнительное поле для пользователей моего приложения, но моя функция updateUserData на моей странице входа выдает мне эту ошибку
'Свойство'updateUserData' не существует для типа '() => any'.ts (2339)'
// Функция входа из login.page.ts
async OpenPortal() {
const { email, password } = this;
try {
const res = await this.afAuth.auth.signInWithEmailAndPassword(
email + '@smartpark.com',
password
);
return this.OpenPortal.updateUserData(res.user);
this.router.navigate(['admin-portal']);
} catch (err) {
console.dir(err);
if (err.code === 'auth/user-not-found') {
console.log('User not Found');
}
}
}
//user.model.ts
export interface User {
uid: string;
email: string;
photoURL?: string;
displayName?: string;
accountType?: string;
}
// auth.service.ts
export class AuthService {
user$: Observable<User>;
constructor(
private afAuth: AngularFireAuth,
private afs: AngularFirestore,
private router: Router
) {
this.user$ = this.afAuth.authState.pipe(
switchMap(user => {
if (user) {
return this.afs.doc<User>(`users/${user.uid}`).valueChanges();
}
})
);
}
Я ожидаю, что список аутентификации firebase будет связан со списком моих пользователей в списке firestore, чтобыпоказать тип учетной записи пользователя, будь то администратор, персонал или студент.