Mam ten przykład barebones nie zachowuje się tak jak oczekuję na podstawie documentation of rxjs. Oczekuję, że subskrypcje obu otrzymają wszystkie wartości.dlaczego druga subskrypcja nie otrzymuje żadnych wartości przy subskrybowaniu dwukrotnie, aby można było zaobserwować w rx 2.3?
Docs wspomnieć:
dwóch obserwatorów następnie zapisać się do tej sekwencji i wydrukowanie jej wartości. Zauważysz, że sekwencja jest resetowana dla każdego subskrybenta, w którym druga subskrypcja wznowi sekwencję od pierwszej wartości.
let s1 = rx.Observable.from([1, 2, 3, 4, 9, 11])
s1.subscribe(
x => console.log(x),
x => console.log(x),
x => console.log('complete'))
s1.subscribe(
x => console.log(x),
x => console.log(x),
x => console.log('complete'))
Jednak druga subskrypcja prostu loguje „kompletna”
Jak się okazuje przykład działa zgodnie z oczekiwaniami w rxjs 2.4, ale nie w 2.3. Czy ktoś wie, co się zmieniło? Nie mogę dostrzec go w the release notes
Oto jsfiddle z 2.3.20: fiddle
i tutaj jest jednym z 2.4.1: fiddle
Po prostu brzmi jak błąd. Oni przechodzą i optymalizują kod i wygląda na to, że po prostu je zepsuł krótko. – Brandon
aktualizowanie rx rozwiązało problem – Remko