Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 需要帮助了解路由顺序吗_Angular_Angular Routing - Fatal编程技术网

Angular 需要帮助了解路由顺序吗

Angular 需要帮助了解路由顺序吗,angular,angular-routing,Angular,Angular Routing,我有几个功能模块,每个都有一个路由模块。我遇到的问题是,我想做一个全面的调查,但这并不是我所期望的,我也不知道为什么 我想设置一些特定的路由匹配,比如/ucp,/,/admin,在第一个段中输入的任何内容都将与最终规则集匹配 在我的应用程序路由模块中,我有: { path: 'admin', component: AdminComponent, }, { path: '', component: HomeComponent, pathMatch: 'ful

我有几个功能模块,每个都有一个路由模块。我遇到的问题是,我想做一个全面的调查,但这并不是我所期望的,我也不知道为什么

我想设置一些特定的路由匹配,比如
/ucp
/
/admin
,在第一个段中输入的任何内容都将与最终规则集匹配

在我的应用程序路由模块中,我有:

{
    path: 'admin',
    component: AdminComponent,
},
{
    path: '',
    component: HomeComponent,
    pathMatch: 'full'
},
{
    path: '',
    component: NotFoundComponent,
},
然后,例如,在我的ucp路由模块中,我有

{
    path: 'ucp',
    component: UcpComponent,
}
{
    path: ':org',
    component: OrgComponent,
}
在我的组织模块中,我有

{
    path: 'ucp',
    component: UcpComponent,
}
{
    path: ':org',
    component: OrgComponent,
}
当导入到我的应用程序模块时,我会按照以下顺序进行导入:

imports: [
    AppRoutingModule,
    UcpModule,
    OrgModule,
]
/ucp
/admin
工作正常,但其他所有内容都直接指向OrgComponent。由于“”具有
pathMatch:'full'
,我希望它应该捕获并直接指向主组件,但情况似乎并非如此

我弄不清楚路由器是按第一个匹配、最佳匹配还是什么匹配。显然,模块的顺序很重要,因为当我在OrgModule下拥有UcpModule时,
/ucp
总是被OrgComponent捕获

我不知道是我对如何设置路由器模块的误解,还是我遗漏了一个技巧。见鬼,我希望我能想出如何正则化匹配以确定它是否有效(我希望能够区分不同组件的字符串和数字),但这是一个完全不同的问题