of
Convierte los argumentos en una secuencia Observable
Signatura
Firma
of(...args: (SchedulerLike | T)[]): Observable
Parámetros
Retorna
Observable<T>
: Un Observable que emite los argumentos descritos anteriormente y se completa.
Descripción
Cada argumento se convierte en una notificación next.
Al contrario que from, no se lleva a cabo ninguna aplanación y cada argumento al completo se emite como una notificación next
.
Ejemplos
Emitir una secuencia de números
StackBlitz
import { of } from "rxjs";
const number$ = of(1, 2, 3, 4, 5);
number$.subscribe((number) => console.log(number));
// Salida: 1, 2, 3, 4, 5
Emitir una secuencia de cadenas
StackBlitz
import { of } from "rxjs";
const framework$ = of("Angular", "React", "Vue");
framework$.subscribe(console.log);
// Salida: Angular, React, Vue
Emitir una secuencia de arrays
StackBlitz
import { of } from "rxjs";
const fruit$ = of(["Fresa", "Cereza"], ["Limón", "Naranja"]);
fruit$.subscribe((fruit) => console.log(fruit));
// Salida: ["Fresa", "Cereza"] ["Limón", "Naranja"]
Emitir una secuencia de objetos
StackBlitz
import { of } from "rxjs";
const iceCream$ = of(
{ size: "Grande", toppings: ["Galletas Oreo", "Sirope de Chocolate"] },
{ size: "Pequeño", toppings: ["Fresas"] }
);
iceCream$.subscribe(console.log);
// Salida: { size: "Grande", toppings: ["Galletas Oreo", "Sirope de Chocolate"] } { size: "Pequeño", toppings: ["Fresas"] }
Ejemplos de la documentación oficial
Emitir los valores 10, 20, 30
import { of } from "rxjs";
of(10, 20, 30).subscribe(
(next) => console.log("next:", next),
(err) => console.log("error:", err),
() => console.log("Fin")
);
// Salida:
// 'next: 10'
// 'next: 20'
// 'next: 30'
// 'Fin'
Emitir el array [1,2,3]
import { of } from "rxjs";
of([1, 2, 3]).subscribe(
(next) => console.log("next:", next),
(err) => console.log("error:", err),
() => console.log("Fin")
);
// Salida:
// 'next: [1,2,3]'
// 'Fin'
Recursos adicionales
Documentación oficial en inglés