我在Angular 4中創建我的第一個應用程序,並且我將AppRoutingModule導入到app.module.ts,據我所知,通過將模塊導入到這個app.module中它變成了「可見「的應用程序的其餘部分。根據這個原則,我沒有在下面的模塊中聲明(retaguarda.module),但是組件retaguarda.component在它的html中有<router-outlet> </ router-outlet>
標籤,但是顯示的錯誤要求導入AppRoutingModule Inside rearModule,但是,如上所述,存在在app.module中聲明,不應該在後面可見。模塊呢?角度路線不能與很多模塊一起工作
直接在retaguardamodule中宣告錯誤消失,但導航有bug,所以我認爲問題出現在多個地方。你能幫助我嗎?
app.module.ts:
...
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
FormsModule,
HttpModule,
AppRoutingModule,
RetaguardaModule,
LoginModule
],
providers: [
LoginGuard,
LoginService,
Ambiente
],
bootstrap: [AppComponent]
})
export class AppModule { }
retaguarda.module.ts:
...
@NgModule({
imports: [
CommonModule,
NavbarModule,
SidenavModule,
CadastrosModule,
MovimentacoesModule,
AdministracaoModule,
RelatoriosModule,
ConfiguracoesModule,
DashboardModule
],
declarations: [
RetaguardaComponent
],
exports: [
RetaguardaComponent
]
})
export class RetaguardaModule { }
app.component.html:
<app-retaguarda></app-retaguarda>
retaguarda.component.html:
<header>
<app-navbar *ngIf="ambiente.usuarioLogado"></app-navbar>
<app-sidenav ></app-sidenav>
</header>
<div class="container">
<router-outlet></router-outlet>
</div>
如果你看一下錯誤(你沒有在你的問題提供)觀察,你會看到,它根本不會問你導入'AppRoutingModule',而是['RouterModule'](https://angular.io/docs/ts/latest/api/router/index/RouterModule-class.html)。原因是你的'AppModule'目前是唯一一個這樣做,只有它的「包含」組件才知道'router-outlet'聲明。我建議在文檔中更熟悉路由器。 –