我需要帮助理解 RxJx 订阅语法

I need help understanding RxJx subscribe syntax

我现在就是这样,不知道有没有更好的办法

this.dataService.subscribe(
    data => this.data = data,
    error => alert('Something went wrong'),
    () => this.doSomethingOnCompletion());

但是,如果我不捕获数据,我可能只更改三个函数中的第一个:

() => null,

documentation for rxjs 4.x doesn't answer this question well enough for me. Version 5.x解释得更少

那么,判决是什么?当我只需要触发某事发生时,以下是错误的吗?

this.dataService.subscribe(
    () => null,
    error => alert('Boom.'),
    () => this.doSomethingOnCompletion());

如果我不需要在完成时做某事,我会忽略那部分。如果我只想检查错误而不检查其他内容怎么办?

RxJS 4 如果你只需要 errors 那么你可以使用只处理错误的 subscribeOnError 方法。

你也可以使用 subscribe 方法,但是你只需要为你不想要的处理程序传递一个空值,你不必传递你自己的 noop。

this.dataService.subscribe(
    null,
    error => alert('Something went wrong'));

RxJS 5 你可以传递一个所谓的PartialObserver:

this.dataService.subscribe({
  error: error => alert('Boom.'), 
  complete: () => this.doSomethingOnCompletion()
})