有没有办法在Angular 14中的路由文件中添加OR条件



我有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');
}

最新更新