在 Angular 中,我们有 Observables 可以更轻松地处理 HTTP 请求。除了有这样的功能
地图(),订阅(),管道()
我知道的不多。
我在这里面临的问题是,何时使用此功能,最适合哪种情况?我根本不关注这些。
在 Angular 中,我们有 Observables 可以更轻松地处理 HTTP 请求。除了有这样的功能
地图(),订阅(),管道()
我知道的不多。
我在这里面临的问题是,何时使用此功能,最适合哪种情况?我根本不关注这些。
这是一个广泛的主题(可能涵盖所有 RxJS),但这里是基础知识。
Observables是可以异步发出值的对象,并在出现错误或不再发出对象时通知用户。您注册以通过使用从可观察对象中获取值subscribe
(好吧,从技术上讲,这不是唯一的方法,而是通常和最基本的方法)。他们启用了这种流程:
obs.subscribe(v => console.log(v)
)subscribe
被调用,“Hello World”被打印到控制台。这些在 HTTP 请求(通过 HttpClient)中很有用,特别是因为 HTTP 请求本质上是异步的。你把字节放在网络上,在某些时候字节会回来。您不希望您的网站在等待时冻结。因此; 这些HttpClient
方法返回您订阅的 observables 以检索请求结果。
至于您提到的方法(map
, filter
, pipe
),它们只是辅助方法,允许您在可观察对象发出时对其执行各种操作。还有更多,您可以在文档中找到关于每个的更多信息。map
和filter
(未使用pipe
)的快速总结:
map
接受一个源 observable,并允许您将其转换为不同类型的 observable。filter
创建一个仅在满足谓词时才从源 observable 发出项目的 observable。