ts文件怎么获取当前路由信息
时间: 2023-11-30 15:01:15 浏览: 180
在Angular中,可以使用Angular提供的Router服务来获取当前路由信息。
想要获取当前路由信息,需要先导入Router模块。在组件中,可以通过在构造函数中注入Router类的实例,然后就可以使用该实例来获取路由信息。
在构造函数中,可以将Router类作为参数来注入:
```
constructor(private router: Router) { }
```
然后,可以使用router的属性和方法来获取当前的路由信息。以下是一些常用的获取路由信息的方法和属性:
1. router.url:获取当前路由的Url字符串。
```
console.log(this.router.url);
```
2. router.events.subscribe:订阅路由事件,可以监听路由的变化和导航事件。
```
this.router.events.subscribe(event => {
console.log(event);
});
```
3. router.routerState.root:获取当前路由状态的根节点。
```
console.log(this.router.routerState.root);
```
4. router.routerState.root.firstChild:获取当前路由状态的第一个子节点。
```
console.log(this.router.routerState.root.firstChild);
```
通过这些属性和方法,我们可以获取路由的各种信息,包括URL、参数、查询参数等。
需要注意的是,只有在组件初始化完成后,才能够获取到当前的路由信息。因此,建议在ngOnInit方法中使用上述方法来获取路由信息。
总之,通过注入Router类的实例,我们可以在Angular中获取到当前路由的各种信息。
阅读全文