Skip to content
On this page

Comment utiliser finalize sur RxJS ?

Pour utiliser la méthode finalize() de RxJS, vous pouvez la mettre en place en suivant ces étapes :

  1. Importez l'opérateur finalize à partir du module RxJS :
js
import { finalize } from 'rxjs';
  1. Utilisez l'opérateur finalize() en le passant en tant qu'argument à la méthode pipe() de votre observable :
js
myObservable.pipe(
  finalize(() => {
    // Code à exécuter à la fin de l'observable
  })
);

La méthode finalize() prend une fonction à exécuter en tant qu'argument, qui sera appelée une fois que l'observable se termine, qu'il s'agisse d'une terminaison normale ou d'une erreur. Cela peut être utile pour effectuer des opérations de nettoyage ou de clôture, comme la fermeture d'une connexion à une base de données ou la suppression d'un écouteur d'événement.

Voici un exemple complet d'utilisation de finalize() pour afficher un message lorsque l'observable se termine :

js
import { of, finalize } from 'rxjs';

const myObservable = of(1, 2, 3).pipe(
  finalize(() => {
    console.log('Observable completed!');
  })
);

myObservable.subscribe({
  next() {
    console.log(val)
  },
  complete() {
    console.log('Observable completed')
  }
})

Dans cet exemple, l'observable myObservable émet les valeurs 1, 2 et 3, puis se termine normalement. Lorsque cela se produit, la fonction passée à finalize() sera appelée, ce qui affichera le message "Observable completed!" dans la console.