首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >角9嵌套路由(3级)

角9嵌套路由(3级)
EN

Stack Overflow用户
提问于 2021-08-18 17:09:25
回答 1查看 579关注 0票数 0

我有三个层次的嵌套路线。

级别:1

代码语言:javascript
复制
const MAIN_ROUTE: Routes = [
  {
    path: '',
    pathMatch: 'full',
    component: AppComponent,
  },
  {
    path: 'events',
    loadChildren: () => import('../app/modules/event/event.module').then(m => m.EventModule),
  },
];
..
RouterModule.forRoot(MAIN_ROUTE);

职等:2

代码语言:javascript
复制
const EVENT_ROUTE: Routes = [
  {
    path: '',
    component: EventComponent,
    children: {
           path: 'center',
           loadChildren: () => import('../app/modules/center/center.module').then(m => m.CenterModule),
    }
  },
  {
    path: '**',
    redircectTo: '/events/center'
    pathMatch: 'full'
  }
];
..
RouterModule.forChild(EVENT_ROUTE);

级别:3

代码语言:javascript
复制
const CENTER_ROUTE: Routes = [
  {
    path: '',
    component: CenterComponent
  },
  {
    path: '**',
    redircectTo: ''
    pathMatch: 'full'
  }
];
..
RouterModule.forChild(CENTER_ROUTE);

我的页面设置如下:

代码语言:javascript
复制
<app-main>
    <some-content></some-content>
    <router-outlet></router-outlet>
</app-main>

<app-event>
    <some-content></some-content>
    <router-outlet name="event"></router-outlet>
</app-event>

<app-center>
    <some-content></some-content>
    <router-outlet name="center"></router-outlet>
</app-center>

每当我导航到/events/center时,我都看不到CenterComponent的内容。我错过了什么吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-08-18 17:49:56

您没有看到任何内容的原因是您的路由模块中没有匹配的路由。如果您的目的是提供多个命名的出口,则必须设置具有匹配的outlet属性的路由。

下面的示例来自这篇文章是关于使用多个出口的。

代码语言:javascript
复制
// use in template
<router-outlet name="sidebar"></router-outlet>  

// routing-module
{
   path: "",
   component: SidebarComponent,
   outlet: "sidebar"  <<<<<<< add this to resolve named routes
}

命名路径可能很有用,但它们变得非常复杂,而且可以创建一些古怪的URI。强烈建议尝试架构你的应用程序,将指定路线的数量保持在最小(如果可能的话)。

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

https://stackoverflow.com/questions/68836642

复制
相关文章

相似问题

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