Angular 未指定名称时从 URL 获取查询参数

Angular Get queryParam from URL when no name is specified

如何从这样的 URL 中获取查询信息:

http://localhost:4200/reset?c564e265451e2e24be460f30271678b566d20fa9962000063bb6d079f5e376a0=

如果是 http://...reset?token=c56...,我可以使用 queryParams 获取值,方法如下:

this.route.queryParams.subscribe((params)=>this.token = params['token']);`

但是当查询参数没有名称时,我不知道如何获取令牌。将 this.route.queryParams 记录到控制台时,我可以看到 _value 下的值。

我找到了几个解决方案:

我找到的第一个解决方案似乎有点难看:

this.route.queryParams.forEach((value) => this.token = Object.keys(value).shift());

然后我发现queryParamMap,这样就没那么丑了:

this.route.queryParamMap.subscribe((value) => this.token = value.keys.shift());

所以我已经使用了 queryParamMap 解决方案,除非有人能找到做同样事情的捷径。