Я использую Ionic 4
Я структурировал свое приложение по страницам, имеющим следующую иерархию
| app
|- tabs
|- tabs.page.ts
|- tabs.module.ts
|- tabs.routing.module.ts
|- pages
|- profile
|- profile
|- profile.module.ts
|- profile.page.ts
|- profile.module.ts
|- profile-routing.module.ts
|- pages.module.ts
|- pages-routing.module.ts
|- app.component.ts
|- app.module.ts
|- app-routing.module.ts
Содержимое app-routing.module.ts
const routes: Routes = [
{ path: '', redirectTo: 'tabs', pathMatch: 'full'},
{ path: 'tabs', loadChildren: './tabs/tabs.module#TabsPageModule', canActivate: [AuthGuardService]},
];
@NgModule({
imports: [
RouterModule.forRoot(routes, { preloadingStrategy: PreloadAllModules })
],
exports: [RouterModule]
})
export class AppRoutingModule {}
Затем tabs.routing.module.ts
const routes: Routes = [
{
path: '',
component: TabsPage,
loadChildren: '../pages/pages.module#PagesModule'
}
];
@NgModule({
imports: [
RouterModule.forChild(routes)
],
exports: [RouterModule]
})
export class TabsPageRoutingModule {}
Что дополнительно загружает PagesModule исодержимое pages-routing.module.ts
const routes: Routes = [
{ path: '', redirectTo: 'profile', pathMatch: 'full'},
{ path: 'profile', loadChildren: './profile/profile.module#ProfileModule'},
];
@NgModule({
imports: [
RouterModule.forChild(routes)
],
exports: [RouterModule]
})
export class PagesRoutingModule {}
и содержимое profile-routing.module.ts
const routes: Routes = [
{ path: '', loadChildren: './profile/profile.module#ProfilePageModule'},
];
@NgModule({
imports: [
RouterModule.forChild(routes)
],
exports: [RouterModule]
})
export class ProfileRoutingModule {}
Но при посещении
/tabs/profile
выдается ошибка как
ОШИБКА Ошибка: «Uncaught (в обещании): ошибка: не удается найти« ProfilePageModule »в« ./profile/profile ».модуль '
Замена {путь:' ', loadChildren:' ./profile/profile.module#ProfilePageModule' innovative , в profile-routing.module.ts с {путь: '', компонент: ProfilePage} работает.