【发布时间】:2017-04-18 20:24:11
【问题描述】:
上下文:
我正在构建一个 Angular 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()有什么区别?
【问题讨论】:
标签: angular firebase rxjs observable angularfire2