RxJS教程不假定您熟悉反应式编程概念或Rx .NET?
我想围绕RxJS的工作原理和它是否适合我的需求,但是我遇到的每篇文章都假设读者已经熟悉反应式编程概念或者具有.NET版本的知识。RxJS教程不假定您熟悉反应式编程概念或Rx .NET?
是否有任何材料专注于平均JavaScript开发人员?
RxJS的动手实验相当体面,虽然有点过时。 http://go.microsoft.com/fwlink/?LinkId=208527 例如您需要添加几个扩展来处理toObservable()以附加到事件,并且不再有removeTimestamp()函数。
/**
* Creates an observable sequence by adding an event listener to the matching jQuery element
*
* @param {String} eventName The event name to attach the observable sequence.
* @param {Function} [selector] A selector which takes the arguments from the event handler to produce a single item to yield on next.
* @returns {Observable} An observable sequence of events from the specified element and the specified event.
*/
jQuery.fn.toObservable = function(eventName, selector) {
return Rx.Observable.fromEvent(this, eventName, selector);
};
Rx.Observable.prototype.logTimestampedValues = function(onNext) {
return this.timestamp().do(onNext).select(function(t) {
return t.value;
});
};
我借用RemoveTimestamp Rx (removed but not forgotten)来更正logTimestampedValues。
我建议观看MSDN上新手指南页面上的视频,特别是Rx Workshop视频。这可能需要几个意见,但你会到达那里。
将RX引入我的视频是InfoQ。我觉得这是一个很好的介绍它如何被利用的方法,它可以帮助你更容易地把你的头围绕在概念上。 http://www.infoq.com/presentations/Netflix-API-rxjava-hystrix
试图通过这种寻找:http://rx.codeplex.com/SourceControl/latest#Rx/JS/rx-vsdoc.js
它可能不是你要找的东西,但它会给你包装你的头周围的各种功能的启动。它应该有一个非常LINQ-esk的方法,所以如果你要查找LINQ的例子,比如http://code.msdn.microsoft.com/101-LINQ-Samples-3fb9811b - 你可能会想到它的一些工作原理。我希望这有帮助。
我发现前微软员工现在是Netflix员工Jafar Husain的互动教程,他们在Netflix中使用这些教程来教RxJS给他们的新员工非常有帮助。
它的好处在于不会熟悉功能性或反应性编程概念。如果你不知道或已经知道一个,另一个或两者都知道,那么这些教程很容易导致这些概念的改进。这使它成为RxJS中使用这两个概念的好地方。
http://jhusain.github.io/learnrx/
来源:https://youtu.be/gawmdhCNy-A?t=38m6s
还有一个叫RxMarbles网站,对如何交互图的所有RxJS”的观测工作方法。它通过说明任何给定RxJS方法的输入和输出时间线上的事件来说明它们是如何工作的。您可以在输入时间线上从左向右拖动事件,以了解每种方法的输出和工作方式。
Here是标题为“反应性的一般理论”由克里斯·科瓦尔(他是无极库Q的作者),它已经被他的三个同伴Domenic Denicola,瑞安保罗和凯文·史密斯的审查一个伟大的阅读。您可能只想阅读有关Observables的部分,但总体来说这是一个很棒的阅读,但有点深奥。
WHATWG的流规范中还有this piece关于可读流和可观测数据之间的区别。
另一个很好的资源是egghead.io其中RxJS上有100个视频(在写这篇文章的时候),大多数是在课程中介绍的。他们非常好,(短而重要),但你必须支付每月费用来访问他们中的一些。你可以definitley在一个月内观看它们,无需支付任何额外费用。