Angular 角载荷下的LazyLoad模

Angular 角载荷下的LazyLoad模,angular,lazy-loading,ng-modules,Angular,Lazy Loading,Ng Modules,我一直在关注这个博客 除了要求我为要加载的模块分配静态路径的部分之外,一切都很好 模块的名称将取决于用户的选择,因为我可能有许多模块 如何在路由中为loadChildren分配变量,以及如何在路由之前创建此变量 { path: 'lazy', loadChildren: 'lazy/lazy.module#LazyModule' } 如果不使用提前编译,可以尝试将函数传递给loadChildren: { path: 'lazy', loadChildren: () => 'lazy/l

我一直在关注这个博客

除了要求我为要加载的模块分配静态路径的部分之外,一切都很好

模块的名称将取决于用户的选择,因为我可能有许多模块

如何在路由中为loadChildren分配变量,以及如何在路由之前创建此变量

{ path: 'lazy', loadChildren: 'lazy/lazy.module#LazyModule' }

如果不使用提前编译,可以尝试将函数传递给
loadChildren

{ path: 'lazy', loadChildren: () => 'lazy/lazy.module#' + dynamicModuleName }

一个选择是定义您的

另一个选项是使用默认导出。由于路由器使用以下代码:

  private loadAndCompile(path: string): Promise<NgModuleFactory<any>> {
    let [module, exportName] = path.split(_SEPARATOR);
    if (exportName === undefined) {
      exportName = 'default';
    }

类型“()=>string”不可分配给类型“LoadChildren”。如果您使用获取此错误,则类型“()=>string”可能不可分配给类型“LoadChildren”。这是您在解决方案中获得的错误还是Daniel的错误?是的。那么,有没有其他方法可以懒散地加载我的模块甚至组件呢。我有500多个表单,每个表单都是一个组件,我想根据请求加载一个表单。因此,组件的路径将由用户选择决定。请创建一个plunker。我现在还无法解决。我正在考虑使用ui路由器,在那里我可能可以定义路径,或者我可能会通过后端代码将一个对象路由到阵列(文本文件编辑,尽管我不知道这意味着什么。我猜这将导致服务器重新启动)
export default class MyModule {}