预加载、延迟加载页面 Ionic 4

Preloading, lazy loaded pages Ionic 4

在 Ionic 3 中,我们可以通过以下方式预加载页面:

IonicModule.forRoot({
  preloadModules: true
});

但是当我尝试在 Ionic 4 中这样做时,它给了我一个错误:

 Argument of type '{ preloadModules: boolean; }' is not assignable to parameter of type 'IonicConfig'.

有人知道如何在 Ionic 4 中执行此操作。

Ionic 4 底层使用 Angular CLI,它支持延迟加载模块。在使用 forRoot()、forChild() 创建路由时。我们可以使用 loadChildren 配置来定义延迟加载的模块。

const app_routes: Routes = [
  {
    path: 'home',
    loadChildren: 'app/home/home.module#HomeModule'
  },
  { path: '', pathMatch: 'full', redirectTo: '/login' },
  { path: '**', pathMatch: 'full', redirectTo: '/login' }
];

RouterModule.forRoot(app_routes);

我们告诉ionic/Angular CLI,当用户访问'/user'位置路径时,我们需要将主模块加载为延迟加载,这将在内部加载所需的组件和服务。

Ionic Docs: https://beta.ionicframework.com/docs/