Sobes.tech
Middle

Ի՞նչ է observable-ը։

sobes.tech AI

Պատասխան AI-ից

Observable — դա տվյալների հոսք է, որը կարող է արտանետել արժեքներ ասինխրոն։ Բացառիկ է promiss-ներից, որոնք վերադարձնում են միայն մեկ արժեք, observable-ները կարող են արտանետել զրո, մեկ կամ մի քանի արժեքներ ժամանակի ընթացքում։

Հիմնական հատկանիշներ՝

  • Աշխատում է միայն երբ գրանցվում է: Հոսքը սկսում է աշխատել միայն երբ գրանցվում է։
  • Չեղարկելի: Կարող եք չեղարկել հոսքը, որպեսզի կանգնեցնեք նրա կատարմանը և ազատեք ռեսուրսները։
  • Բազմաթիվ արժեքներ: Կարող է արտանետել մի քանի արժեք, մինչդեռ promiss-ները լուծվում են միայն մեկ անգամ։

Հիմնական բաղադրիչներ՝

  • Observable: Տվյալների հոսքը։
  • Observer: Օբյեկտ next, error և complete մեթոդներով, որոնք կանչվում են observable-ով։
  • Subscription: Հաղորդագրության արդյունքը, թույլ է տալիս չեղարկել գրանցումը։
  • 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(); // Կարող եք չեղարկել գրանցումը