0
私の問題は、私のすべての子ルートモジュールをプリロードしたいということです。私は角2 Eager Loading最大コールスタックサイズを超えました
RouterModule.forRoot(appRoutes, { preloadingStrategy: AppCustomPreloader })
AppCustomPreloaderは私のネストされたルーティングモジュール内のルートのそれぞれについて
export class AppCustomPreloader implements PreloadingStrategy {
preload(route: Route, load: Function): Observable<any> {
try {
return route.data && route.data.preload ? load() : Observable.of(null);
}
catch (ex) {
console.log('error');
}
}
}
次、私は、データの属性それぞれを与えているように見える私のルートルーティングモジュールに以下があります。 " 「しかし、私は取得しています正しく
{
path: 'somepage',
loadChildren: './somedirectory/somemodule.module#SomeModule',
data: { preload: true }
}
すべてのプリロード下のように 『最大コールスタックサイズは、Firefoxで』クロームでエラーと 『多すぎる再帰を』超過真。
私は、約10のモジュールがプリロードされていて、それらはすべて比較的小さいです。問題はスタックサイズが実際には大きすぎるか、何か無限のルーティングモジュールの負荷がなくなっているという問題です。 2つの可能性をデバッグする良い方法は何ですか?
素晴らしいトレースを使用すると、失敗した特定のモジュールと再帰的な読み込みを開始するのに十分な特定のモジュールを確認することができました。ヒントをありがとう! – Monzingo