我想将 Angular 路由器注入到我的 HttpInterceptor 中。不幸的是,浏览器控制台中抛出了以下错误:
类型错误:this.router 未定义
我像往常一样将它添加到我的构造函数中:
constructor (private router: Router) {
}
此外,我在 app.module.ts 中的 providers 数组中执行了以下操作:
{
provide: HTTP_INTERCEPTORS,
useClass: MyService,
multi: true,
deps: [Router]
}
我想在我的错误处理程序的 if 语句中使用当前 url 来为不同的路由提供特定的功能:
myErrorHandler(error: HttpErrorResponse) {
if (this.router.url === 'test') {
// do something
} else {
return throwError(error).pipe(
// do something
);
}
}
我究竟做错了什么?