Bir kullanıcının bir sayfayı kaydırmasına izin veriyorum ve her kaydırma olayında -
görünüm noktasında yeni öğeler olup olmadığını kontrol ediyorum (varsa, bu yeni öğeler üzerinde bazı işlemler yapıyorum - şimdilik ilgisiz).RxJS - gazdan sonra debounce olayı?
const observable = Rx.Observable.fromEvent(window, 'scroll');
const subscriber = observable.throttleTime(300 /* ms */).subscribe(
(x) => {
console.log('Next: event!');
},
(err) => {
console.log('Error: %s', err);
},
() => {
console.log('Completed');
});
Bu kod beklendiği gibi çalıştığını ve her 300 ms sonra mesaj görüyorum:
Yani böyle bir şey var.
Ancak bir sorun var. Bir kullanıcı 300 ms'yi tamamlamadan (olayı yükseltilmezse) kaydırılabilir ve kaydırma sırasında yeni bir öğe görünür.
debounce
yöntemine ihtiyacım olan yer burasıdır. (")" bir olay ortaya çıkar "anlamına gelen ()"
Tam olarak ihtiyacım olan şey budur.
:const subscriber = observable.throttleTime(300 /* ms */).debounceTime(350)....
Ama sadece debounced olayları bakın. Bir Sıçrama takmak -
Soru
nasıl gaz ve gaz sonunda kullanabiliriz?
Bu çözümün [bu yanıt] 'a çok yakın bir şey olacağını düşünüyorum (http://stackoverflow.com/a/43104131/6680611). – cartant
İki akışın birleştirilip birleştirilmediğini kontrol edin: sizin için daraltılmış ve geri döndürülen çalışmalar https://plnkr.co/edit/lHYVxSSrYA05wBWVqnqr?p=preview –
@YuryTarabanko Gerçekten. teşekkür ederim. Lütfen bir cevap olarak gönderin (isterseniz) –