我有3个路径,所有这些路径都应该只重定向到同一个组件。目前我的路由文件是:
const routes: Routes = [
{ path: 'ict/car-details', component: CarDetailsComponent },
{ path: 'ict/parts', component: PartsComponent },
{ path: 'ict/bike-details', component: BikeDetailsComponent,
},
{
path: 'ict/car-details/upload-documents',
component: DocUploadComponent,
},
{
path: 'ict/parts/upload-documents',
component: DocUploadComponent,
},
{
path: 'ict/bike-details/upload-documents',
component: DocUploadComponent,
},
];
注意最后三条路线。DocUploadComponent
适用于所有三个组件,即CarDetails、Part和BikeDetails。有办法把他们结合在一起吗。有什么OR条件吗。请帮忙。
您可以使用参数化路线
例如:
const routes: Routes = [
{ path: 'ict/car-details', component: CarDetailsComponent },
{ path: 'ict/parts', component: PartsComponent },
{ path: 'ict/bike-details', component: BikeDetailsComponent,
},
{
path: 'ict/:type/upload-documents',
component: DocUploadComponent,
},
];
然后按照读取
constructor(private route: ActivatedRoute) {}
ngOnInit() {
this.sub = this.route.params.subscribe(params => {
this.type = params['type'];
});
// or
// this.type = this.route.snapshot.paramMap.get('type');
}