我对the docs不了解。有人可以向我解释吗?
答案 0 :(得分:2)
大多数运算符按流顺序工作,例如:
source$.pipe(
map((a: string) => changeAndReturnArray(a)),
filter((b: string[]) => giveMeOnlySymbolsThatAreAfterNInAlphabet(b)),
switchMap((c: string[]) => putToSomeObservable(c))
....
);
在该示例中,您并没有“中断”流,也不是跳出流来执行某些外部操作。 使用“点击”运算符可以跳出流,您可以在其中:
我的个人观点-仅在找不到更好的解决方案时才使用“点击”。跳出流并调用某些副作用可能是一把双刃剑,尤其是当您处理一些更大的应用程序时。副作用总是很难维护,并且您可以毫无理由地完成正在处理魔术的应用程序。
答案 1 :(得分:1)
例如,您可以用它来产生副作用。或者,您可以使用它来查看正在传递的当前值是什么,而不会影响/修改Observable。像console.log()
一样,但是在流中。
答案 2 :(得分:-1)
贴花
public tap(nextOrObserver: Observer | function, error: function, complete: function): Observable
点击是对 do 运算符的替换,该运算符返回的 observable 与您的源可观察的相同。对于每个发出的值,执行副作用。它具有3个可选参数。
推荐用于调试目的。