我正在尝试在我的服务中实现“CanActivate”方法,以下是 服务代码
printf()
编译此类型脚本代码时,会显示错误
类'GuardUserSearchService'错误地实现了接口'CanActivate'。
知道我的代码中存在什么问题。
答案 0 :(得分:7)
您的服务必须实现此功能才能完全实现CanActivate
接口:
canActivate(
next: ActivatedRouteSnapshot,
state: RouterStateSnapshot
): Observable<boolean> | Promise<boolean> | boolean { }
请注意,界面名称为CanActivate
(大写C
),而方法名称为canActivate
(小写c
)。
答案 1 :(得分:1)
根据the documentation,界面如下所示:
interface CanActivate {
canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) : Observable<boolean>|Promise<boolean>|boolean
}
因此,您的实现缺少参数:
export class GuardUserSearchService implements CanActivate {
canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {
console.log('dummy guard clause for User search');
return true;
}
}
答案 2 :(得分:0)
只需一项更改-
#both C&A is capital
export class Guard implements CanActivate () {
-code-
}
#here only A is in capital dont follow CammelCase
canActivate(){
-code
});