Acho que devo estar entendendo mal algo fundamental, porque, na minha opinião, esse deve ser o caso mais básico para um observável, mas, durante toda a minha vida, não consigo descobrir como fazê-lo a partir dos documentos.
Basicamente, eu quero ser capaz de fazer isso:
// 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
}
Mas não consegui encontrar um método parecido push
. Estou usando isso para um manipulador de cliques, e sei que eles têm Observable.fromEvent
para isso, mas estou tentando usá-lo com o React e preferiria simplesmente atualizar o fluxo de dados em um retorno de chamada, em vez de usar um método completamente diferente sistema de manipulação de eventos. Então, basicamente, eu quero isso:
$( "#target" ).click(function(e) {
eventObservable.push(e.target.text());
});
O mais próximo que cheguei foi do uso observer.onNext('foo')
, mas isso não parecia realmente funcionar e isso é chamado pelo observador, o que não parece certo. O observador deve reagir ao fluxo de dados, não alterá-lo, certo?
Eu simplesmente não entendo a relação observador / observável?