[英]How to get query params in root component?
在角度2中,是否可以以“角度方式”在根组件中获取查询参数?
我有一个带有根组件和两个路由/状态的简单plnkr 。
我尝试通过获取参数:
export class App implements OnInit {
constructor(private route: ActivatedRoute) {
}
ngOnInit(){
console.log(this.route.snapshot.queryParams);
}
}
如果我使用查询参数: plnkr打开示例,则控制台日志中的对象为空。
但是当我单击“一个”或“两个”链接时,它可以获得查询参数。
我想根无法看到查询参数,因为它不是激活的路由。
解决方案是创建伪根路由吗? 还是有另一种读取URL的方式(不是在谈论本机JS)。
我的用例:无论我走的路线如何,我都需要能够检查网址中是否有“令牌”,然后从中读取并删除它。
看看我的变化:
https://plnkr.co/edit/b45VUvfVqUl5u2EuzNI9?p=preview
{
path: '**',
component: App
}
我添加了默认路由-应该将其添加到路由器。 基本上,这表示通过的其他任何路线,然后再转到此处。
<a routerLink="**" [queryParams]="{token:12345678}">Home</a>
在链接中,我添加了一个主页链接,类似于您的其他链接。 当导航到一两个时,然后回到首页,您将看到令牌传递到对象中。 这是因为令牌是在链接中指定的。
这仅在链接具有令牌(由硬编码或由其他组件动态生成)的令牌时才有效。
这可能会有所帮助:
https://angular.io/docs/ts/latest/guide/router.html#!#query-parameters
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.