Sobes.tech
Middle

Observable nədir?

sobes.tech Süni İntellekt

AI-dan cavab

Observable — bu məlumat axınıdır ki, o asinxron olaraq dəyərlər verə bilər. Promisslərdən fərqli olaraq, observable bir zaman kəsiyində sıfır, bir və ya bir neçə dəyər verə bilər.

Əsas xüsusiyyətlər:

  • Tembel: Axın yalnız abunə olunduqda başlayır.
  • İptal edilə bilər: Axından çıxmaq və onun icrasını dayandırmaq və resursları sərbəst buraxmaq mümkündür.
  • Bir çox dəyər: Bir neçə dəyər verə bilər, promisslər isə yalnız bir dəfə həll olur.

Əsas komponentlər:

  • Observable: Öz məlumat axını.
  • Observer: next, errorcomplete metodlarına malik obyekt, observable tərəfindən çağırılır.
  • Subscription: Observable-ə abunə olmanın nəticəsi, abunədən çıxmağa imkan verir.
  • Operatorlər: Observable-ı transformasiya edən və ya birləşdirən funksiyalar (map, filter, merge).

İstifadə nümunəsi (RxJS):

import { of } from 'rxjs';
import { map } from 'rxjs/operators';

const source = of(1, 2, 3); // 1, 2, 3-ü verən observable yaradırıq

const example = source.pipe(map(x => x + 1)); // map operatorunu tətbiq edirik

const subscription = example.subscribe({ // observable-ə abunə oluruq
  next: value => console.log(`Next: ${value}`), // Hər bir dəyəri emal edir
  error: err => console.error(`Error: ${err}`), // Xəta emalı
  complete: () => console.log('Complete!') // Bitdikdə çağırılır
});

// çıxış:
// Next: 2
// Next: 3
// Next: 4
// Complete!

// subscription.unsubscribe(); // Abunəlikdən çıxmaq mümkündür