使用ActivatedRoute服务来获取路由参数
要获取路由参数,可以注入ActivatedRoute服务并在ngOnInit函数中订阅路由参数的变化。以下是一个示例:
import { Component, OnInit } from '@angular/core'; import { ActivatedRoute } from '@angular/router';
@Component({ selector: 'app-my-component', templateUrl: './my-component.component.html', styleUrls: ['./my-component.component.css'] }) export class MyComponent implements OnInit { private id: string;
constructor(private route: ActivatedRoute) { }
ngOnInit() { this.route.params.subscribe(params => { this.id = params['id']; // 在这里可以对路由参数进行任何操作 }); } }
这个组件订阅路由参数的变化,并将参数存储在私有变量id中。在ngOnInit函数中,我们可以使用参数做任何操作。注意,params对象是一个字符串键值对的对象,其中键是我们在路由配置中定义的参数名。例如,如果我们有一个路由配置{'path': 'my-route/:id'},那么params['id']将包含路由参数的值。