Logout en Angular con Firebase
Clase 65 de 80 • Curso de Angular 4
Contenido del curso
Introducción a Angular 4
Setup del Ambiente de Trabajo
Conceptos Básicos
- 9

Para qué nos sirven los Módulos y Componentes
08:10 min - 10

Tipos de Data Binding y String Interpolation
05:05 min - 11

Property Binding
06:04 min - 12

Event Binding
03:04 min - 13

ngModel y two way binding en Angular
05:12 min - 14

Directivas en Angular 4 y ngFor
07:39 min - 15

Cómo usar ngIf en Angular 4.0
03:04 min - 16

Instalando librerías con NPM (Google Maps)
06:48 min
Directivas
Angular UI
Ruteo
- 24

Qué hace el router en Angular 4
03:11 min - 25

Implementación de Rutas en el Proyecto
07:36 min - 26

Href vs router link: navegación angular
02:27 min - 27

Resaltando el link activo con CSS para indicar visualmente en que componente nos encontramos
01:53 min - 28

Parámetros de ruta con routerLink en Angular
06:01 min - 29

Parámetros tipo Query
03:53 min - 30

Creando una vista de detalle para el proyecto
09:06 min - 31

Página de contacto Angular desde cero
07:45 min
Servicios
- 32

Servicios en Angular para compartir datos
00:58 min - 33

Creando nuestro propio servicio
07:11 min - 34

Configurando Firebase en nuestro proyecto
05:12 min - 35

Guardando Records en Firebase
12:20 min - 36

Obteniendo records desde Firebase
08:40 min - 37

Obteniendo coordenadas usando Geocoding
13:45 min - 38

Reto: Crear una vista para editar records
09:29 min - 39

Mostrando marcadores en el Mapa de Google
03:02 min
Conexión Remota (Http y Sockets)
Pipes
Animaciones en Angular
Testing en Angular
Autenticación y Protección de Rutas
- 59

Cómo funcionan los JSON Web Tokens
03:05 min - 60

Preparación de vistas para login y registro
11:58 min - 61

Registrando usuarios
07:29 min - 62

Loggeando usuarios
07:18 min - 63

Guardias canActivate en Angular: Proteger rutas con autenticación
11:09 min - 64

Cómo integrar Facebook login con Firebase
09:08 min - 65

Logout en Angular con Firebase
Viendo ahora
RxJS
- 66

Cómo funciona RxJS con metáfora de oficina
02:09 min - 67

Mostrar email del usuario logueado en Angular
06:32 min - 68

Uso de los Observables
04:30 min - 69

Cómo implementar type ahead con Observables y RxJS
10:43 min - 70

Implementar formularios reactivos con type ahead
07:58 min - 71

Cómo rellenar campos automáticamente con Google
01:28 min
Publicando nuestro proyecto
Fin del curso
Sesiones en vivo
Contenido Bonus
Implementa un logout fiable y redirecciones automáticas en Angular con Firebase. Aquí verás cómo usar Router.navigate, condicionales ngIf y AngularFireAuth.signOut para mejorar la experiencia del usuario y mantener una interfaz coherente tras login, registro y cierre de sesión.
¿Qué problema resolvemos con logout y redirecciones en Angular?
Al autenticarse con éxito, el usuario seguía en la misma pantalla. Lo correcto es redirigir a una ruta como “lugares” para confirmar el flujo. Además, dejar de borrar manualmente el registro en local storage y delegarlo a AngularFireAuth con un método de logout.
- Redirigir tras login y registro mejora la usabilidad.
- Centralizar el cierre de sesión en el servicio de autorización simplifica el estado.
- Mostrar/ocultar elementos con ngIf mantiene una interfaz coherente.
¿Cómo implementar redirecciones tras login y registro?
Tras la autenticación, se inyecta Router en el servicio y se llama a navigate para enviar al usuario a “lugares”. Así se aplica la protección de rutas y una transición fluida tras login o registro.
¿Dónde inyectar router y qué ruta usar?
- Inyecta Router como propiedad privada en el servicio de autorización.
- Usa la ruta “lugares” para el destino post-autenticación.
// autorizacion.service.ts
import { Router } from '@angular/router';
private router: Router;
// tras login o registro exitoso
this.router.navigate(['lugares']);
¿Cómo verificar que funciona?
- Realiza login y confirma que ves “logueado con éxito” y la redirección inmediata a “lugares”.
- Repite el flujo en registro para validar el mismo comportamiento.
¿Cómo crear un botón de logout con AngularFireAuth?
Se agrega un método público de logout en el servicio para llamar a AngularFireAuth.signOut. Esto notifica a Firebase y borra el estado del usuario en local storage. Luego, desde el template principal se lanza la acción con un botón y se redirige a “lugares”.
¿Qué hace AngularFireAuth.signOut?
- Cierra la sesión en Firebase de forma segura.
- Limpia el rastro de autenticación en local storage.
- Permite encadenar acciones: alerta y redirección.
// autorizacion.service.ts
public logout() {
return this.angularFireAuth.signOut().then(() => {
alert('sesión cerrada');
this.router.navigate(['lugares']);
});
}
¿Cómo conectar el botón con el servicio?
- En el template principal, agrega un enlace con (click) a un método del componente.
- En el componente, delega en el servicio de autorización.
<!-- app.component.html -->
<ul class="nav-right">
<li (click)="logout()">Logout</li>
</ul>
// app.component.ts
logout() {
this.autorizacionService.logout();
}
¿Cómo mostrar u ocultar login, registro y logout?
- Usa ngIf para controlar la visibilidad según si el usuario está logueado.
- Muestra logout solo cuando hay sesión activa y oculta login/registro en ese caso.
- Retira la negación en el ngIf del botón de logout para que aparezca solo cuando hay usuario autenticado.
¿Qué reto aplicar con Firebase y datos del usuario?
Como extensión, investiga cómo obtener los datos del usuario actual desde Firebase y muestra el correo junto al botón de logout cuando haya sesión activa.
- Lee el usuario activo desde Firebase.
- Extrae el email y renderízalo cerca del botón de logout.
- Comparte tu implementación con una captura y el código.
¿Te animas a contar cómo resolviste la obtención del email y la lógica de visibilidad con ngIf?