angular – Observable .do()运算符(rxjs)的用例

前端之家收集整理的这篇文章主要介绍了angular – Observable .do()运算符(rxjs)的用例前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
背景:

我正在构建一个角度2应用程序(使用Firebase API)。我正在使用AngularFire模块。我想知道如何将canActivate方法与AngularFire auth Observable混合,我找到了this post.答案是让canActivate方法返回一个Observable< boolean> :

canActivate(): Observable<boolean> {
  return this.auth
    .take(1)
    .map((authState: FirebaseAuthState) => !!authState)
    .do(authenticated => {
      if (!authenticated) this.router.navigate(['/login']);
    });
}

这是我第一次看到Observable do操作符,我无法理解它的真正含义?官方文件没有帮助我,我没有找到合适的例子。

题:

有人可以带一些.do()用法的例子吗?与.subscribe()的区别?

.do()是为每个事件执行代码。与.map()的区别在于,.do()的返回值被忽略,并且不会更改订阅者接收的值。
原文链接:https://www.f2er.com/angularjs/144015.html

猜你在找的Angularjs相关文章