2017-11-15 11 views
0

PageModuleがルーティングで参照されています。これは、循環依存関係を削除し、アプリケーションを起動してから再度追加すると機能します。しかし、もし私がサーバーを停止し、そこに循環依存関係を持ってもう一度起動しなければならないのではない。これをどうすれば解決できますか?再帰的ルーティングが最大スタック超過エラーを引き起こします

私はこのルータモジュールを持っている:

その後、PageModuleにインポートされ
const routes: Routes = [ 
    { 
    path: '', 
    component: PageComponent, 
    children: [ 
     { 
     path: ':pageId', 
     loadChildren: 'app/routes/+dashboard/routes/+pages/routes/+page/page.module#PageModule' 
     } 
    ] 
    } 
]; 

@NgModule({ 
    imports: [RouterModule.forChild(routes)] 
}) 

export class PageRouterModule {} 

here見られるように

@NgModule({ 
    imports: [ 
    PageRouterModule 
    ], 
    exports: [PageRouterModule], 
    declarations: [PageComponent] 
}) 

export class PageModule {} 

は、どうやらこれはおそらく修正されましたが、私は、最新のCLIバージョンにアップグレードしました1.5.0ですが、問題はまだあります。

loadChildren: 'app/routes/+dashboard/routes/+pages/routes/+page/page.module#PageModule' 

へ:loadModulefunctionエクスポートされ

loadChildren: loadModule 

:理論的には

export function loadModule() { 
    return PageModule; 
} 

は、あなたもそれ() => PageModuleを行うことができます

+0

これは正しい動作ではありませんが、PageModuleは遅延ロードしようとし、循環依存関係に陥ります。 –

+0

@RohanAroraはい、いいえ、子ルートがいくつあるかわからないシナリオでは、これを行う必要があります。 – Chrillewoodz

答えて

0

私はこの行を変更することがわかりましたラムダエラーが発生するので、exporteを使用する必要があります上記のように機能します。

私はこれが他の人に役立つことを願っています。

関連する問題