Nižšie sú uvedené výhody, ktoré som čítal v adrese URL: Uhol - Promise vs Observable
sľub:
- vráti jednu hodnotu
- nie je zrušená
- čitateľnejší kód s try / catch a async / await
pozorovateľné
- pracuje s viacerými hodnotami v čase
- vypovedateľné
- podporuje mapovanie, filtrovanie, redukciu a podobné operátory
- používať reaktívne rozšírenia (RxJS)
- pole, ktorého položky prichádzajú asynchrónne v čase
V pozorovateľnom vidíte 3 a 4 bod ako operátory a RXJS. Mám len základnú otázku, ako môže "t i používať RXJS a operátorov s sľubmi? Čo je význam bodu 5
odpovede:
1 pre odpoveď č. 1Stručne povedané, nie je možné použiť týchto operátorov (napr. Mapu, filter) priamo na Promise.
Rxjs poskytuje operátorovi toPromise
ktorý konvertuje pozorovateľný na sľub - ak je to vaše preferencia.
Myslím si, že bod 5 je v skutočnosti prepojený s bodom 1. Bod 1 je jadrom toho, čo všetko sú pozorované: pozorovanie hodnôt 0 až n v čase.
Nemusíte si myslieť, že je to užitočné, ak ste znovupoužíva sa na používanie Promises jednoducho pre žiadosti Ajax - napr. zasiahnuť koncový bod a získať späť hodnotu. Ale v prípade Observables ich môžete použiť v akomkoľvek kontexte - napríklad udalosti DOM.
Ak by ste mali vytvoriť pozorovateľnú udalosť prostredníctvom počúvania udalosti Mouseover, potom by ste „prijímali n hodnoty počas danej doby - a potom by ste mohli reagovať na tieto udalosti.
Pri premýšľaní v zmysle požiadaviek Ajax je klasickým príkladom vstup do vyhľadávania, ktorý je podrobne popísaný v odkaze na vašu otázku.