【发布时间】:2019-01-25 00:33:34
【问题描述】:
我希望在我的子模块中访问 RouterModule 指令(routerLink),但我没有任何路由可以添加到 forChild 方法中。 我应该以哪种方式在我的@NgModule 类中导入RouterModule而不获取另一个Router实例(已经通过RouterModule.forRoot(ROUTES)在根应用程序模块中实例化):
@NgModule({
imports: [RouterModule.forChild([])]
})
或
@NgModule({
imports: [RouterModule]
})
两者似乎都适用于我的应用程序。我只是不确定服务实例是否发生了两次。
我已经阅读了文档的这两个条目:
结果是根应用模块导入RouterModule.forRoot(...)并得到一个Router,而所有路由组件都导入RouterModule,但不包含Router.[1]
还有:
对于子模块和延迟加载的子模块,模块应该使用如下[2]:
@NgModule({
imports: [RouterModule.forChild(ROUTES)]
})
class MyNgModule {}
【问题讨论】: