voici mon Angular2 application de la structure:
Voici la partie de mon code. Le suivant est le principal module
de la Angular2 application, qu'importe ses règles de routage et d'un enfant du module (EdgeModule
) et utilise des composants liés à certaines pages.
app.le module.ts
@NgModule({
declarations: [
AppComponent,
PageNotFoundComponent,
LoginComponent
],
imports: [
...
appRouting,
EdgeModule
],
providers: [
appRoutingProviders,
LoginService
],
bootstrap: [AppComponent]
})
export class AppModule {
}
Voici les règles de routage pour le module principal. Il ont des chemins d'accès à la page de connexion et impossible de trouver la page.
app.le routage.ts
const appRoutes: Routes = [
{ path: 'login', component: LoginComponent },
{ path: '**', component: PageNotFoundComponent }
];
export const appRoutingProviders: any[] = [];
export const appRouting = RouterModule.forRoot(appRoutes, { useHash: true });
Voici EdgeModule
qui déclare les composants qu'elle utilise et importer ses propres règles de routage et 2 enfants modules (FirstSectionModule
et SecondSectionModule
).
bord.le module.ts
@NgModule({
declarations: [
EdgeComponent,
SidebarComponent,
TopbarComponent
],
imports: [
...
edgeRouting,
FirstSectionModule,
SecondSectionModule
],
providers: [
AuthGuard
]
})
export class EdgeModule {
}
Voici les règles de routage pour le module qui se charge, comme vous pouvez le voir, topbar et la barre latérale composants.
bord.le routage.ts
Paths['edgePaths'] = {
firstSection: 'firstSection',
secondSection: 'secondSection'
};
const appRoutes: Routes = [
{ path: '', component: EdgeComponent,
canActivate: [AuthGuard],
children: [
{ path: Paths.edgePaths.firstSection, loadChildren: '../somepath/first-section.module#FirstModule' },
{ path: Paths.edgePaths.secondSection, loadChildren: '../someotherpath/second-section.module#SecondModule' },
{ path: '', redirectTo: edgePaths.dashboard, pathMatch: 'full' }
]
}
];
export const edgeRouting = RouterModule.forChild(appRoutes);
Enfin, c'est l'un des deux enfants du module, qui ont ses composants et les importations ses règles de routage.
la première section.le module.ts
@NgModule({
declarations: [
FirstSectionComponent,
SomeComponent
],
imports: [
...
firstSectionRouting
],
providers: [
AuthGuard,
]
})
export class FirstSectionModule {
}
Ce sont les règles de routage pour les pages (composants) de l' FirstSectionModule
la première section.le routage.ts
Paths['firstSectionPaths'] = {
someSubPage: 'some-sub-page',
someOtherSubPage: 'some-other-sub-page'
};
const appRoutes: Routes = [
{
path: '',
children: [
{ path: Paths.firstSectionPaths.someSubPage, component: someSubPageComponent},
{ path: Paths.firstSectionPaths.someOtherSubPage, component: someOtherSubPageComponent},
{ path: '', component: AnagraficheComponent }
]
}
];
export const firstSectionRouting = RouterModule.forChild(appRoutes);
Presque la même chose se passe pour second-section.module.ts
et second-section.routing.ts
fichiers.
Quand je lance l'application, la première chose qui charge la page correspondante FirstSectionComponent
, avec aucune barre latérale ni topbar.
Pouvez-vous me dire quel est le problème avec mon code? Il n'y a pas d'erreurs dans la console.