Używam tutaj RxJS i nie mogę pozbyć się tego problemu z pozornie.RxJS: Dzielenie wyniku tablicy z Observable.fromPromise
rx.Observable
.from([1,2,3,54,3,22,323,23,11,2])
.distinct()
.subscribe(function next (x) {
console.log('Next');
console.log(x);
}, function error (x) {
console.log('Error');
console.log(x);
}, function completed() {
console.log('Completed');
});
Powyższy kod wypluwa każdy element tablicy w kolejności zgodnie z oczekiwaniami.
rx.Observable
.fromPromise(getNumbers([1,2,3,54,3,22,323,23,11,2]))
.distinct()
.subscribe(function next (x) {
console.log('Next');
console.log(x);
}, function error (x) {
console.log('Error');
console.log(x);
}, function completed() {
console.log('Completed');
});
function getNumbers (nums) {
return new Promise(function (resolve, reject) {
resolve(nums);
});
}
Tutaj otrzymuję tylko pełną tablicę (tj. [ 1, 2, 3, 54, 3, 22, 323, 23, 11, 2 ]
). Czy RxJS nie powinien rozdzielać wyniku? Mam nadzieję, że przynajmniej miała jakąś logikę do tego.
Dziękuję
Alternatywnie Absolutnie chciałbym być gotowi do wykonywania jakiegoś przekształcić które mogą mutować strumienia * po * obietnica zostanie rozwiązany .. np odbierz pełną tablicę (1 pozycję w strumieniu) i zamień ją na elementy array.length w strumieniu. –