首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >两个模的角路由优先级

两个模的角路由优先级
EN

Stack Overflow用户
提问于 2018-03-08 02:53:29
回答 2查看 1.6K关注 0票数 2

如果一个角应用程序有两个模块:AppModuleProfileModule,它们可以配置自己的路由。

指南中,它指出路由配置的顺序非常重要。举个例子:

代码语言:javascript
运行
复制
const appRoutes: Routes = [
  { path: 'crisis-center', component: CrisisListComponent },
  { path: 'hero/:id',      component: HeroDetailComponent },
  {
    path: 'heroes',
    component: HeroListComponent,
    data: { title: 'Heroes List' }
  },
  { path: '',
    redirectTo: '/heroes',
    pathMatch: 'full'
  },
  { path: '**', component: PageNotFoundComponent }
];

在这里,首先计算crisis-center路径,最后计算**路径。

但是,如果AppModuleProfileModule配置了自己的路由,则不清楚对某个路由的评估是如何发生的。如果AppModule路由配置的最后有一个**路由,这将匹配与AppModule中的其他路由不匹配的所有路由。这将使ProfileModule的路由配置毫无用处。

那么,当有多个模块有自己的路由信任时,路由的优先级如何工作呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-03-08 04:36:43

根据那些角舵

每个路由模块按照导入顺序增加路由配置。如果首先列出AppRoutingModule,则通配符路由将在英雄路由之前注册。与每个URL匹配的通配符路由将拦截导航到英雄路径的尝试。

因此,订单是基于您导入模块的顺序。在您的示例中,您需要首先导入ProfileModule,这样AppModule路由列表末尾的**路由就不会阻止任何其他路由的处理。

票数 4
EN

Stack Overflow用户

发布于 2018-03-08 09:38:39

在多个模块的情况下,通配符路由应该是整个应用程序中的一个,就好像每个模块中都存在一样,首先导入的一个模块的路由将优先于所有其他模块的整个路由集。

  1. 进口ModA路线 康斯特ModA_Route = {路径:'moda',组件: ModAComp}, {路径:'moda:id',组件: ModADetailComp} 这里没有默认路径
  2. 进口ModB路线 const ModB_Route = {path:'modb',组件: ModBComp}, {path:'modb:id',组件: ModBDetailComp} 这里没有默认路径
  3. 现在默认的路线..。这可以登陆应用程序自己的欢迎页面或类似的

如果您为模块添加了默认路由,这将如何与任何其他模块的默认路由区别.模块(app/modA或app/modB)本身的入口点应该是模块本身的默认入口点。其他任何东西都应该默认为应用程序自己的逻辑

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49164610

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档