5

次のように構成されたルート パスがあります。

{
    path: 'user/:id/edit/:type',
    component: UserEditTypeComponent,
},

アクティブ化されたルートからアクセスできるインターセプターからのパスに到達したい:

constructor(private activatedRoute: ActivatedRoute) {
}

ngOnInit() {
    console.log(this.activatedRoute.routeConfig.path);
}

user/:id/edit/:typeこれにより、コンソールにこのパスが返されます。

私が試したのと同じパスをインターセプターから取得したい:

intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
    let ar = this.injector.get(ActivatedRoute);
    console.log(ar.routeConfig.path);
}

これは次のエラーを返します: Cannot read property 'path' of null. パスを削除してテストしたところrouteConfig、null であることがわかりました。

インターセプター内でアクティブ化されたルートを取得するにはどうすればよいですか?

pathin インターセプターにアクセスする他の方法はありますか?

質問が不明確であると思われる場合は、より多くの情報で更新できます。

4

4 に答える 4