Angular 2 + Lazyloaded模块正在被导入的模块覆盖
问题描述:
我想知道如何导入模块,而不优先于父模块。我想了解为什么我导入的模块重写父模块入口组件。我将QuotesModule
导入我的CompaniesModule
,以便它的组件可用于我的CompaniesModule
。当QuotesModule
导入如下所示:Angular 2 + Lazyloaded模块正在被导入的模块覆盖
CompaniesModule (lazyloaded)
const ROUTES: Routes = [
{path: '', component: CompaniesComponent}
];
@NgModule({
declarations: [
CreateCompanyComponent,
CompaniesComponent
],
providers: [
],
imports: [
QuotesModule,
FormsModule,
ReactiveFormsModule,
GlobalModule,
CommonModule,
RouterModule.forChild(ROUTES)
],
exports: [
],
schemas: [
CUSTOM_ELEMENTS_SCHEMA
],
entryComponents: [
CompaniesComponent
]
})
...我试图导航到CompaniesComponent
途径,QuotesModule
入口部件解决吧。任何有识之士将非常感谢!
这是我QuotesModule
路线和NgModule:
const ROUTES: Routes = [
{path: '', component: QuotesComponent}
];
@NgModule({
declarations: [
QuotesComponent
],
providers: [
],
imports: [
CommonModule,
GlobalModule,
RouterModule.forChild(ROUTES)
],
exports: [
]
})
答
,我将发布作为回答,然后(基于上述评论)...
...问题听起来像您的路由器,而不是懒加载的模块(取决于如果这些模块实际上是正确加载) 。检查儿童路线与主要路线不会相互覆盖。
很高兴有帮助。追踪路由器问题可能是一个熊。
答
的问题是路由。我使用了不同的路径来延迟加载我的QuotesModule
而不依赖于CompanyModule
,并且当导入时,QuotesModule
的路由匹配,然后覆盖导入模块的路由。
我可能是错的,但这听起来像一个路由器问题。如果组件被正确导入(懒惰或其他),一切都会好的。 –
你是对的!我注意到导入模块共享相同的路由器路径。改变它们可以解决问题。我将编辑该问题放入其他模块和路由。 – Rex
,谢谢:) – Rex