Firebase Angular8 AngularFireAuth:authState.map for Guard canActivate()错误:属性';地图';不存在于类型';可观察<;用户>';
当我试图在防护装置上定义Firebase Angular8 AngularFireAuth:authState.map for Guard canActivate()错误:属性';地图';不存在于类型';可观察<;用户>';,firebase,angular8,angular-router-guards,Firebase,Angular8,Angular Router Guards,当我试图在防护装置上定义canActive()时,Angular8 AngularFireAuth出现错误 我得到一个错误: 类型“Observable”上不存在属性“map”。ts(2339) 从“@angular/core”导入{Injectable}; 从'@angular/Router'导入{CanActivate,Router}; 从'angularfire2/auth'导入{AngularFireAuth}; 从“rxjs”导入{Observable}; @可注射() 导出类Auth
canActive()
时,Angular8 AngularFireAuth出现错误
我得到一个错误:
类型“Observable”上不存在属性“map”。ts(2339)
从“@angular/core”导入{Injectable};
从'@angular/Router'导入{CanActivate,Router};
从'angularfire2/auth'导入{AngularFireAuth};
从“rxjs”导入{Observable};
@可注射()
导出类AuthGuard实现了CanActivate{
构造函数(专用路由器:路由器,专用afAuth:AngularFireAuth){}
canActivate():可观察的{
this.afAuth.authState.map(auth=>{
如果(!auth){
this.router.navigate(['/login']);
返回false;
}否则{
this.router.navigate(['/']);
返回true;
}
})
}
}
从“@angular/core”导入{Injectable}”;
从'@angular/Router'导入{CanActivate,Router};
从'angularfire2/auth'导入{AngularFireAuth};
从“rxjs”导入{Observable};
从“rxjs/operators”导入{map}
@可注射()
导出类AuthGuard实现了CanActivate{
构造函数(专用路由器:路由器,专用afAuth:AngularFireAuth){}
canActivate():可观察的{
返回此.afAuth.authState.pipe(映射((用户)=>{
如果(用户){
返回true;
}
this.router.navigate(['/login'])
返回false;
}))
}
}
import { Injectable } from "@angular/core";
import { CanActivate, Router } from '@angular/router';
import { AngularFireAuth } from 'angularfire2/auth';
import { Observable } from 'rxjs';
@Injectable()
export class AuthGuard implements CanActivate {
constructor(private router: Router, private afAuth: AngularFireAuth) { }
canActivate(): Observable<boolean> {
this.afAuth.authState.map(auth => {
if(!auth) {
this.router.navigate(['/login']);
return false;
} else {
this.router.navigate(['/']);
return true;
}
})
}
}
import { Injectable } from "@angular/core";
import { CanActivate, Router } from '@angular/router';
import { AngularFireAuth } from 'angularfire2/auth';
import { Observable } from 'rxjs';
import { map } from 'rxjs/operators'
@Injectable()
export class AuthGuard implements CanActivate {
constructor(private router: Router, private afAuth: AngularFireAuth) { }
canActivate(): Observable<boolean> {
return this.afAuth.authState.pipe(map((user)=>{
if(user) {
return true;
}
this.router.navigate(['/login'])
return false;
}))
}
}