angular8获取当前路由的方法
在Angular 8中,有多种方法可以获取当前路由。下面是其中一些常用的方法。
1. 使用ActivatedRoute服务:
ActivatedRoute服务是Angular提供的一个用于获取当前路由信息的服务。可以在组件中注入ActivatedRoute服务,然后使用它的属性来获取当前路由的相关信息。
```typescript
constructor(private route: ActivatedRoute) {}
ngOnIni
ute.url.subscribe((segments) =>
react router的state和search
//获取当前路由的URL片段
console.log(segments);
});
ute.params.subscribe((params) =>
//获取当前路由的参数
console.log(params);
});
ute.queryParams.subscribe((queryParams) =>
//获取当前路由的查询参数
console.log(queryParams);
});
```
2. 使用Router服务:
Router服务是Angular的核心路由服务,它提供了一些方法来获取当前路由的信息。
```typescript
constructor(private router: Router) {}
ngOnIni
const currentUrl = uter.url;
//获取当前路由的URL
const currentRoute = uterState.snapshot.url;
//获取当前路由的URL(快照方式)
const currentParams = firstChild.params;
//获取当前路由的参数(快照方式)
const currentQueryParams = firstChild.queryParams;
//获取当前路由的查询参数(快照方式)
```
3. 使用Location服务:
Location服务是Angular提供的一个用于与浏览器地址栏进行交互的服务。可以使用Location服务的path(方法来获取当前路由的URL。
```typescript
constructor(private location: Location) {}
ngOnIni
const currentUrl = this.location.path(;
//获取当前路由的URL
```
4. 使用ActivatedRouteSnapshot和RouterStateSnapshot:
ActivatedRouteSnapshot和RouterStateSnapshot是Angular路由模块提供的两个类,它们包含了当前路由的详细信息。可以在组件中注入ActivatedRouteSnapshot和RouterStateSnapshot,并使用它们来获取当前路由的信息。
```typescript
constructor(private activatedRouteSnapshot: ActivatedRouteSnapshot, private routerStateSnapshot: RouterStateSnapshot) {}
ngOnIni
const currentUrl = uterStateSnapshot.url;
//获取当前路由的URL
const currentParams = this.activatedRouteSnapshot.params;
//获取当前路由的参数
const currentQueryParams = this.activatedRouteSnapshot.queryParams;
//获取当前路由的查询参数
```
这些是一些常用的方法来获取当前路由的信息。根据具体的应用场景,选择合适的方法来获取当前路由的信息。