Mui*_*rik 2 javascript routing typescript angular
简单的Angular 2问题:为什么在将RouterStateSnapshot注入到我的登录组件中的构造函数中时,为什么会出现DI(依赖项注入)错误?我试图在注销之前获取该url,因此可以在用户重新登录时将其传递给它(这样它将加载其上次访问的组件/页面)。事实证明,这比我预期的要困难得多。即使将其导入并包含在我的构造函数中的RouterStateSnapshot之后,我仍然遇到DI错误。这是我在登录组件中进行设置的方式:
import { ActivatedRoute, ActivatedRouteSnapshot, Router, RouterStateSnapshot } from '@angular/router';
constructor(private router: Router,
private route: ActivatedRoute,
private authenticationService: AuthenticationService,
private alertService: AlertService,
private state: RouterStateSnapshot,
private authGuardService: AuthGuardService,
private idle: Idle)
{
Run Code Online (Sandbox Code Playgroud)
这是什么问题 RouterStateSnapshot与ActivatedRoute,ActivatedRouteSnapshot等不同,我缺少什么?我可以毫无问题地将其导入和注入?为什么不能以相同方式注入RouterStateSnapshot?
顺便说一下,我可以在我的authGuardService中使用RouterStateSnapshot而不出现问题。它正在我的canActivate()函数中使用-并返回正确的结果。那么在这种情况下有什么不同?为什么我不能在我的登录组件中使用它?
我认为您可以RouterStateSnapshot从那里得到RouterState。考虑以下示例:
constructor(private router: Router) {
let routerStateSnapshot = this.router.routerState.snapshot;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2737 次 |
| 最近记录: |