モデルの例でロングプレスイベントをキャプチャしようとしています。以下のコードを参照してください:RxJSによるイベント間の長い間隔の検出
var Rx = require('rx'),
Observable = Rx.Observable;
var downEvents = [
// {'type': 'down', 'time': 50},
// {'type': 'down', 'time': 80},
// {'type': 'down', 'time': 140},
{'type': 'down', 'time': 250}
];
var upEvents = [
// {'type': 'up', 'time': 60},
// {'type': 'up', 'time': 90},
// {'type': 'up', 'time': 150},
{'type': 'up', 'time': 850}
];
var downStream = Observable.from(downEvents).flatMap(function(event) {
return Observable.just(event.type).delay(event.time);
});
var upStream = Observable.from(upEvents).flatMap(function(event) {
return Observable.just(event.type).delay(event.time);
});
var longClicks = downStream.flatMap(function(d) {
return Observable.just(d).delay(400).takeUntil(upStream);
});
longClicks.subscribe(function(x) {
console.log('long click: ' + x);
});
そして、その単一のイベントをキャプチャします。しかし、私が以前の出来事のコメントを外すと、何も受け取りません。誰も私がなぜそれが理解できるように助けてくれますか?同じコードが正常に動作UIイベントに
:https://jsfiddle.net/zjor/0uqaw936/