Angular在未指定名称时从URL获取queryParam

时间:2017-03-27 21:33:56

标签: angular angular4

如何从以下URL获取查询信息:

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

如果是http://...reset?token=c56...我可以通过以下操作使用queryParams获取值:

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

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

1 个答案:

答案 0 :(得分:0)

我想出了几个解决方案:

我发现的第一个解决方案看起来有点难看:

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

然后我找到了queryParamMap,这让它变得不那么难看了:

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

所以我使用了queryParamMap解决方案,除非有人能找到做同样事情的简单方法。