给出以下代码:
const LOCALIZED_PATHS: Route[] = [
{
path: 'activities',
canActivate: [CountryGuard],
loadChildren: 'app/common/activities/index/global/activity-index.module#ActivityIndexModule'
}
];
.
.
.
RouterModule.forRoot([
...LOCALIZED_PATHS,
/** GLOBAL ROUTES */
// New Module
{
path: 'activities/new',
loadChildren: 'app/common/activities/new/activity-new.module#ActivityNewModule'
}
.
.
.
还有路线/activities/new
。
我希望路由器测试LOCALIZED_PATHS
中的规则,如果返回false
,则测试下一个规则(path: /activities/new
)并匹配。
根据google dev控制台中程序的流程,当前正在发生的事情是,它首先测试ActivityIndexModule
给出的规则并返回false
,然后测试{{1 }}保护并返回canActivate
,但最终没有导航到false
。
我想念什么?在给定程序逻辑的情况下,我应该正确理解控制台中的流吗?
非常感谢您的宝贵时间。
答案 0 :(得分:0)
已解决。匹配器捕获路由后,路由就结束了。警卫队正在进行后匹配,因此即使路由器返回false
,路由器也不会继续尝试与下一条规则进行匹配。