子模块中的成角度的多条路线

问题描述

如果我有Angular模块,这些路线

const routes: Routes = [
  {path: 'route1',children: [
    {path: '',component: route1Component}
  ]},{path: 'route2',component: route2Component}
  ]},{path: 'route3',component: route3Component}
  ]}
];

然后我该如何在父模块中使用路由,在那里我会延迟加载。 通常我会做这样的事情

{path: 'route1',loadChildren: () => import('../child.module').then(m => m.ChildModule)}

但通常,这意味着子路由具有认路由,这里我有3

我只想导入模块,并从该模块获取所有路由

解决方法

您必须为延迟加载的路由器提供默认的任何一条路由。 因此,我建议仅定义默认路由器并将其重定向到第一条路由。

因此您可以拥有以下代码:

const routes: Routes = [
 {path:''',redirectTo:'route1',pathMatch:'full'},{path: 'route1',children: [
    {path: '',component: route1Component}
  ]},{path: 'route2',component: route2Component}
  ]},{path: 'route3',component: route3Component}
  ]}
];

这将解决您未定义任何默认路由器的问题。