Я думаю, что я, должно быть, неправильно понимаю что-то фундаментальное, потому что, на мой взгляд, это должно быть самым основным случаем для наблюдаемого, но для моей жизни я не могу понять, как это сделать из документов.
В принципе, я хочу быть в состоянии сделать это:
// create a dummy observable, which I would update manually
var eventObservable = rx.Observable.create(function(observer){});
var observer = eventObservable.subscribe(
function(x){
console.log('next: ' + x);
}
...
var my_function = function(){
eventObservable.push('foo');
//'push' adds an event to the datastream, the observer gets it and prints
// next: foo
}
Но я не смог найти метод, как push
. Я использую это для обработчика кликов, и я знаю, что для этого у них есть Observable.fromEvent
, но я пытаюсь использовать его с React, и я предпочел бы просто обновить поток данных в обратном вызове вместо использования совершенно другая система обработки событий. В общем, я хочу это:
$( "#target" ).click(function(e) {
eventObservable.push(e.target.text());
});
Самое близкое, что я получил, - это использовать observer.onNext('foo')
, но, похоже, это не сработало, и это вызвало наблюдателя, что кажется неправильным. Наблюдатель должен реагировать на поток данных, а не изменять его, верно?
Я просто не понимаю отношения наблюдатель/наблюдаемый?