我可以从 `canActivate: AuthGuard` 中读取路由参数的值吗?

Can I read route parameter's value from the `canActivate: AuthGuard`?

{
    path: ':l/bla/bla/bla', component: ..., canActivate: [AuthGuard]
}

然后AuthGuard的构造函数:

constructor(
    private readonly router: Router,
    private readonly activedRoute: ActivatedRoute) { }

... 但是 .params.snapshot.params 都是空的,无法从那里读取 :l 参数值("language" 的缩写)。

所以问题:如果我的 dynamic :l 就位,我如何才能在未经授权的情况下重定向到另一个页面?


P.S。 data 不起作用(是吗?),因为它可以用于编译时已知数据而不是动态数据。

canActivate(activatedRouteSnapshot: ActivatedRouteSnapshot) { ... }

解决了问题:方法参数应该优先于构造函数注入。