我认为我一定是对某个基本概念产生了误解,因为我的理解中这应该是 Observable 的最基本用例,但是我无论如何都无法从文档中找出如何实现。
基本上,我想要做到这一点:
// 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')
,但似乎并没有真正起作用,并且这是在观察者上调用的,这似乎不正确。观察者应该是对数据流做出反应的东西,而不是改变它,对吗?
我是不是不理解观察者/可观察者的关系?