使用惰性模块的Angular2路由

时间:2017-01-17 04:30:17

标签: angular angular2-routing angular-routing

我试图弄清楚如何使用延迟加载的模块在我的应用程序中配置路由。

例如,我有一个名为AnimalsModule的惰性模块,我希望这个模块处理2条路线" / cats"和" /狗"。

在当前路由器api中,我需要为所有懒惰模块路由指定公共路径,例如:' animals / dogs'和'动物/猫'。

{
   path: "animals",
   loadChildren: "animals"
}

我可以为AnimalsModule指定空路径:

{
    path: "",
    loadChildren: "animals"
},
{
   path: "foo",
   component: FooComponent
}

但是在这种情况下,当用户导航到" / foo"时,将不必要地加载AnimalsModule。资源。

如果我创造了动物/猫科动物。和动物/狗'路由和将来我想重构我的代码将AnimalsModule拆分为DogsModule和CatsModule(也是懒惰),我将不得不打破我的应用程序路由。 (合并相同)

如何使用没有公共路径的惰性模块创建路由?

1 个答案:

答案 0 :(得分:1)

路由有一个名为matcher属性see docs的属性,您可以在其中提供自己的路由匹配逻辑,但在问题的注释中,我真的要么创建2条路由,要么甚至将它们分成2个模块(更有可能)。