Dans l'exemple des gaz de site Web rxjs,Comment obtenir une valeur limitée dans rxjs?
La séquence émise est 0 4 2 1 3.
La séquence de sortie est 0 1. (Parce 4, 2 et 1 est rayé)
var Rx = require('rxjs/Rx');
var times = [
{ value: 0, time: 100 },
{ value: 1, time: 600 },
{ value: 2, time: 400 },
{ value: 3, time: 900 },
{ value: 4, time: 200 }
];
// Delay each item by time and project value;
var source = Rx.Observable.from(times)
.flatMap(function (item) {
return Rx.Observable
.of(item.value)
.delay(item.time);
})
.throttleTime(300 /* ms */);
var subscription = source.subscribe(
function (x) {
console.log('Next: %s', x);
},
function (err) {
console.log('Error: %s', err);
},
function() {
console.log('Completed');
});
La console affichera
Next: 0 (at 100ms) // The value 4 was dropped(at 200ms)
// The value 2 was dropped(at 400ms)
Next: 1 (at 600ms)
// The value 3 was dropped(at 900ms)
Completed
Mais, est-il possible d'obtenir le flux de valeur perdue?
Next: 4 (at 200ms)
Next: 2 (at 400ms)
Next: 3 (at 900ms)
Completed
Que voulez-vous exactement? Pourquoi 4 d'abord puis 1? Je ne vois aucune logique ici – Maxime
La valeur 4 sera émise à 200ms La valeur 1 sera émise à 600ms Ainsi, la valeur 4 serait d'abord avant 1. –
Mon mauvais je suis fatigué je pensais qu'il a été commandé et le le temps ne fait qu'augmenter ... :) – Maxime