Sto utilizzando RxJS qui e non riesco a superare questo problema semplice apparentemente.RxJS: divisione di un risultato di matrice da 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');
});
Il codice sopra riportato sputa ogni elemento dell'array in ordine come previsto.
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);
});
}
Qui comunque ottengo soltanto l'array completo (cioè [ 1, 2, 3, 54, 3, 22, 323, 23, 11, 2 ]
). RxJS non dovrebbe rompere il risultato a parte? Spero che almeno abbia avuto una logica per questo.
Grazie
In alternativa vorrei assolutamente essere disposti a svolgere una sorta di trasformare che potrebbero mutare il flusso * dopo * la promessa è risolto .. per esempio ricevere l'array completo (1 elemento nello stream) e trasformarlo in elementi array.length nel flusso. –