我主要是JavaScript和RxJ的新手,所以我的问题甚至可能没有意义但是我试图理解RxJavaScript中的Observable是否应该与异步库一起使用或者它是否处理它在内部?
答案 0 :(得分:0)
不,它不暗示异步,您不需要使用另一个异步库。 RxJS旨在抽象出需要担心某些事情是如何执行的,并关注 执行什么。例如,如果我们有一个简单乘以值的函数:
function square(x) { return x * x; }
上面对异步事件一无所知,所以我们可以将它用于:
var counter = 1;
var immediate = Rx.Observable.from([1, 2, 3, 4, 5]);
var asynchronous = Rx.Observable.fromEvent(window, 'click', () => counter++);
immediate.map(square).subscribe(x => console.log('Sync: ' + x));
asynchronous.map(square).subscribe(x => console.log('Async: ' + x));
第一个流(默认情况下)将立即同步执行,而第二个流则在单击窗口时异步执行。两者都使用相同的square
函数,而不关心值是同步还是异步。