我想使用Angular中的Router通过URL传递id。而且我必须在另一页上获取该值。就像我有一个学生名单。在单击编辑按钮时,该学生属于列表中的特定学生。该学生证的ID,以编辑学生详细信息页面。提取该StudentId之后,我想在输入字段中显示现有详细信息。
那么我该怎么做呢?
这是我的示例路径
{ path: 'school-students-list', component: studentsListPageComponent },
{ path: 'edit-student-details', component: studentEdit },
给路由指定一个这样的参数:
{ path: 'edit-student-details/:id', component: studentEdit }
然后ActivatedRoute
在该组件中使用以访问路由参数。从导入@angular/router
import { ActivatedRoute, Params } from '@angular/router';
import { Subscription } from 'rxjs/Subscription';
将其注入构造函数
private routeSub: Subscription;
constructor(private route: ActivatedRoute) {}
在初始化时,订阅路由参数
ngOnInit(): void {
this.routeSub = this.route.params.subscribe((params: Params): void => {
const id = params['id'];
});
}
退订始终是个好主意
ngOnDestroy(): void {
this.routeSub.unsubscribe();
}
要链接到此页面并传递其会员ID,请在您的学生列表页面上执行以下操作:
<a [routerLink]="['/edit-student-details', memberId]">Edit</a>
要通过组件方法进行导航,请Router
从中注入@angular/router
,然后在要导航时使用this.router.navigate(['/edit-student-details', memberId]);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句