Middle
რა არის observable?
sobes.tech AI
პასუხი AI-სგან
Observable — ეს არის მონაცემთა ნაკადი, რომელიც შეიძლება ასინქრონულად გამოუშვას მნიშვნელობები. განსხვავებით promises-ებისგან, რომლებიც აბრუნებენ მხოლოდ ერთ მნიშვნელობას, observable შეუძლია გამოუშვას ნული, ერთი ან რამდენიმე მნიშვნელობა დროის განმავლობაში.
ძირითადი მახასიათებლები:
- სასაცილოა: ნაკადი იწყებს მუშაობას მხოლოდ მაშინ, როდესაც მასზე გამოწერა ხდება.
- გაუქმებადი: შესაძლებელია გამოწერის გაუქმება, რათა შეჩერდეს მისი შესრულება და განთავისუფლდეს რესურსები.
- მრავალი მნიშვნელობა: შეუძლია გამოუშვას რამდენიმე მნიშვნელობა, მაშინ როდესაც promises-ები იხსნება მხოლოდ ერთხელ.
ძირითადი კომპონენტები:
- Observable: თავად მონაცემთა ნაკადი.
- Observer: ობიექტი მეთოდებით
next,errorდაcomplete, რომლებიც გამოიძახება observable-ით. - Subscription: შედეგი observable-ზე გამოწერიდან, რომელიც საშუალებას იძლევა გაუქმება.
- Operators: ფუნქციები, რომლებიც გარდაქმნიან ან კომბინირებენ observable-ს (
map,filter,merge).
გამოყენების მაგალითი (RxJS):
import { of } from 'rxjs';
import { map } from 'rxjs/operators';
const source = of(1, 2, 3); // ქმნით observable, რომელიც გამოუშვებს 1, 2, 3
const example = source.pipe(map(x => x + 1)); // ვრცელდებით ოპერატორ `map`-ს
const subscription = example.subscribe({ // გამოწერა observable-ზე
next: value => console.log(`Next: ${value}`), // თითოეული მნიშვნელობის დამუშავება
error: err => console.error(`Error: ${err}`), // შეცდომის დამუშავება
complete: () => console.log('Complete!') // დასრულებისას
});
// შედეგი:
// Next: 2
// Next: 3
// Next: 4
// Complete!
// subscription.unsubscribe(); // გამოწერის გაუქმება შესაძლებელია