在app.module.ts中导入RouterModule和Routes模块 import { RouterModule, Routes } from '@angular/router';
在@NgModule注解的imports数组内添加RouterModule.forRoot()函数,传入由Routes对象形成的配置。 @NgModule({ imports: [ RouterModule.forRoot([ { path: '', redirectTo: '/home', pathMatch: 'full' }, //默认路由 { path: 'home', component: HomeComponent }, { path: 'detail/:id', component: DetailComponent } //带参数路由 ]) ] ... })
在模板文件中添加带参数的链接 {{item.name}}
在组件代码中通过ActivatedRoute服务获取路由参数 import { ActivatedRoute } from '@angular/router'; ... constructor(private route: ActivatedRoute) { } ... ngOnInit() { this.route.params.subscribe(params => { this.id = +params['id']; //获取id参数 }); }
注意:必须使用+号将路由参数转换为数字类型。