Objetivo
Implementar autenticación de usuarios en la aplicación utilizando Firebase Authentication.
Configurar Firebase Authentication
Abre src/app/app.module.ts
y asegúrate de que el módulo AngularFireAuthModule
esté importado:
import { AngularFireAuthModule } from '@angular/fire/compat/auth';
Implementar Registro y Autenticación
Abre src/app/home/home.page.ts
y agrega la lógica para registrar y autenticar usuarios:
import { Component } from '@angular/core';
import { AngularFireAuth } from '@angular/fire/compat/auth';
@Component({
selector: 'app-home',
templateUrl: 'home.page.html',
styleUrls: ['home.page.scss'],
})
export class HomePage {
email: string = '';
password: string = '';
user: any;
constructor(private afAuth: AngularFireAuth) {}
async register() {
const userCredential = await this.afAuth.createUserWithEmailAndPassword(this.email, this.password);
this.user = userCredential.user;
}
async login() {
const userCredential = await this.afAuth.signInWithEmailAndPassword(this.email, this.password);
this.user = userCredential.user;
}
logout() {
this.afAuth.signOut();
this.user = null;
}
}
Editar home.page.html
Abre src/app/home/home.page.html
y agrega el siguiente contenido:
<ion-header>
<ion-toolbar>
<ion-title>
Firebase Auth
</ion-title>
</ion-toolbar>
</ion-header>
<ion-content class="ion-padding">
<ion-item *ngIf="!user">
<ion-label position="floating">Email</ion-label>
<ion-input [(ngModel)]="email"></ion-input>
</ion-item>
<ion-item *ngIf="!user">
<ion-label position="floating">Contraseña</ion-label>
<ion-input [(ngModel)]="password" type="password"></ion-input>
</ion-item>
<ion-button expand="full" *ngIf="!user" (click)="register()">Registrar</ion-button>
<ion-button expand="full" *ngIf="!user" (click)="login()">Iniciar Sesión</ion-button>
<ion-button expand="full" *ngIf="user" (click)="logout()">Cerrar Sesión</ion-button>
<div *ngIf="user">
<p>Usuario: {{ user.email }}</p>
</div>
</ion-content>
Conceptos Básicos
Firebase Authentication proporciona servicios de autenticación fáciles de usar, permitiendo autenticar usuarios mediante correo electrónico, redes sociales y otros métodos.
Ejercicio
Implementa la funcionalidad de registro y autenticación de usuarios en tu aplicación utilizando Firebase Authentication. Verifica que los usuarios puedan registrarse, iniciar sesión y cerrar sesión correctamente.