我有一个 Angular2 路由器 (RC1),它在其所有三个路由中加载相同的组件:
@Routes([
{ path: '/create', component: MyComponent },
{ path: '/detail/:id', component: MyComponent },
{ path: '/update/:id', component: MyComponent },
])
这背后的原因是因为我需要三个非常相似的 CRUD 操作表单。所以,我决定使用同一个组件结合几个*ngIf
基于组件模式(创建、细节、更新)的组件。
现在的问题是我找不到获取 URL 上最后一段的名称的方法。理想情况下,我可以做这样的事情(伪代码):
export class MyComponent {
constructor(private router: Router) {
this.mode = this.router.getLastURLSegmentName();
if (this.mode == 'detail' or this.mode == 'update') {
let param_id = this.router.getLastURLSegment().getParam('id');
}
}
}
我怎样才能实现这样的功能?有任何想法吗?谢谢!