No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Operadores: takeUntil

23/36
Recursos

Aportes 3

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Parece ser que esta clase esta mal ubicada, porque aparecen cosas que antes no se hicierón, por ejemplo la reubicación de los observables no la pude hacer porque en otras clases no los hicimos.
Toca ajustar aqui.

☑️ El operador takeUntil nos ayuda a completar un observable si otro observable ha emitido un valor.

Operador TakeUntil


el operador takeUntil en RxJS te permite controlar el flujo de eventos y detenerlo cuando se produce un evento en particular.

<aside>
<img src=“https://static.platzi.com/media/achievements/piezas-programacion-reactiva-rxjs_badge-92561658-fc14-4ef2-9372-13fc9ae9f8f3.png” alt=“https://static.platzi.com/media/achievements/piezas-programacion-reactiva-rxjs_badge-92561658-fc14-4ef2-9372-13fc9ae9f8f3.png” width=“40px” /> Es como si estuvieras jugando al fútbol y tuvieras que parar cuando escuchas el silbato del árbitro.

</aside>

Imagínate que estás jugando con tus amigos en el parque y tienes una pelota de fútbol. El operador takeUntil es como si alguien te dijera: “Deja de jugar cuando llegue la señal”. La señal puede ser cualquier cosa que te indique que debes parar de jugar, como el sonido de un silbato.

import { fromEvent } from "rxjs";
import { takeUntil } from "rxjs/operators";

const onMouseMove$ = fromEvent(document, "mousemove");
const onMouseDown$ = fromEvent(document, "mousedown");

// A través de takeUntil() definimos que cada vez que un evento es enviado por onMouseDown$
// el observable sourceCompleted$ será completado. Y por consiguiente no emitirá más valores (línea 15).
const sourceCompleted$ = onMouseMove$.pipe(takeUntil(onMouseDown$));
sourceCompleted$.subscribe(console.log);