我正在学习RxJ并试图通过使用fromEvent
方法创建一个observable来模拟Rx.Observable.create
。我有两个观察员,一切正常。但是当我使用onclick
代替addEventListener
时,只会触发第二个观察者的下一个方法。
这是预期的行为吗?如果是这样的话?
这就是我所做的 - https://jsfiddle.net/54fwwwwj/
let observable = Rx.Observable.create(function(obs){
btnAction.addEventListener('click', (event)=>{obs.next('A value');});
//btnAction.onclick = (event)=>{obs.next('A value');};
});
答案 0 :(得分:2)
那是因为您在btnAction.onclick
方法中多次覆盖Observable.create
属性。
所以你只看到第二个观察者,因为它在第一个观察者设置了自己的处理程序后覆盖了onclick
属性。