Angular 2.4.8 ...我的应用程序有一个主模块,它有自己的路由模块 . 它延迟加载具有自己的路由模块的辅助模块 . 主模块引用辅助路由模块,因此Angular以正确的顺序跟踪路由阵列,并且所有内容都工作正常 .

辅助模块声明一个实现RouterReuseStrategy的自定义提供程序,以便它可以重用其子组件之一 . 这很有效,而主模块直接引用辅助模块,预先加载所有内容 .

但后来我将主路由更改为延迟加载辅助模块,并且自定义RouterReuseStrategy提供程序完全停止工作,实际上甚至没有调用它的构造函数 .

主模块声明提供者如下:providers:[{provide:RouteReuseStrategy,useClass:CustomReuseStrategy}]

主路由模块延迟加载辅助模块,如下所示:loadChildren:'.. / foo / foo.module#FooModule' .

More simply :模块是否都有自己的RouterReuseStrategy并且是延迟加载的?

任何帮助将不胜感激!