有人可以向我解释为什么 Angular 2 需要 RxJS 库以及它与 Observables 和 Angular 2 的确切关系吗
问问题
197 次
1 回答
2
RxJS 是 Angular2 使用的 JavaScript 反应式编程库。
事实上,这个Observable
类来自这个库。
例如,EventEmitter
Angular2 的类(它是一个 hot observable)扩展了Subject
RxJS 的类。请参阅源代码中的这些行:
- https://github.com/angular/angular/blob/master/modules/angular2/src/facade/async.ts#L8
- https://github.com/angular/angular/blob/master/modules/angular2/src/facade/async.ts#L109
表单中的一些类和 HTTP 支持也利用Observable
了这个库:
- HTTP
- 表格支持
总结一下,当你使用 Angular2 的以下特性时,你间接使用了 Rxjs 库:
- 使用组件事件
- 使用表单控件的更改检测
- 使用 HTTP
- ...
可观察对象的优点在于您可以将它们互连以创建异步数据流。它非常强大,并且比承诺提供的更进一步......
您会注意到,Observable
如果您愿意,您也可以自己创建 s。
否则,如果您正在寻找反应式编程的精彩介绍,您可以看看这篇很棒的文章:https ://gist.github.com/staltz/868e7e9bc2a7b8c1f754 。
希望它能回答您的问题,因为后者有点宽泛。蒂埃里
于 2016-01-21T10:49:24.187 回答