Angular - 在forChild路由中使用自定义preloadingStrategy

问题描述 投票:3回答:2

我有app-routing.module和一个加载仪表板的延迟加载模块。

{ path: '', redirectTo: '', pathMatch: 'full'},
{ path: '', component: AppComponent },
{ path: 'dir', 
  loadChildren: './dboard/dboard.module#DboardModule'}, 
{ path: '**', component: NotfoundComponent }

在dashBoardRouting中我有其他延迟加载的模块:

const routes: Routes = [
     {  path: '', component: DboardComponent,
        children: [             
        { path: 'accounter', 
          loadChildren: './accounter/accounter.module#AccounterModule' },
        { path: 'manager', 
          loadChildren: './maanger/manager.module#ManagerModule' },
         ...
@NgModule({
  imports: [RouterModule.forChild(routes)],
  exports: [RouterModule]
})

AccounterModule和其他延迟加载的模块都有自己的路由模块。

我想在forChild方法中使用自定义预加载策略是否可能?

angular typescript lazy-loading
2个回答
2
投票

preloadingStrategy仅在根级别定义,并且将自动应用于.ForChild()的所有生根模块。

所以你应该有一个自定义preloadingStrategy函数,可以处理所有级别的所有路由


0
投票

看起来你应该创建自己的预加载策略,如here所示。

© www.soinside.com 2019 - 2024. All rights reserved.