根据参数加载模块

时间:2017-08-21 19:44:47

标签: angular angular-routing eager-loading angular-module

我正在尝试使用相同的Angular项目来管理3个网站(我知道..) 在我的应用程序中,我希望能够基于某些参数(域url)从AppModule加载特定模块(急切加载)。 然后,所选模块将拥有自己的路由器,并将延迟加载我的组件的其余部分。

我尝试使用路由器插座,但我需要使用代理在我的插座路由器中安装一个组件,这就是我现在所拥有的:

app.routing-module.ts

import {NgModule} from '@angular/core';
import {Routes, RouterModule} from '@angular/router';
import {ComponentModuleOneProxyComponent} from './component-module-one-proxy/component-module-one-proxy.component';
import { ModuleOneModule } from './module-one/module-one.module';

const routes: Routes = [
  {
    path: '',
    outlet: 'module-one-outlet',
    component: ComponentModuleOneProxyComponent,
    children: [
      {
        path: '',
        loadChildren: () => ModuleOneModule
      }
    ],
  },
  {
    path: 'module-two',
    loadChildren: 'app/module-two/module-two.module#ModuleTwoModule'
  },
];

@NgModule({
  imports: [RouterModule.forRoot(routes)],
  exports: [RouterModule]
})
export class AppRoutingModule {
}

但我一直收到错误:

 Error: Uncaught (in promise): TypeError: Cannot read property 'routes' of undefined

0 个答案:

没有答案