SystemJsNgModuleLoader.load()失败,并显示“找不到模块”

时间:2018-08-14 13:23:45

标签: angular angular-cli systemjs

在我的angular 6应用程序中,我试图使用SystemJsNgModuleLoader.load()动态加载模块,但是它总是失败,并显示“找不到模块”错误。

This small sample program on GitHub重现了该问题。它不过是一个由Angular-CLI生成的新项目,带有一个我尝试动态加载的附加模块。它在控制台中失败并显示以下错误消息:

  

错误:未捕获(承诺):错误:找不到模块“ src / app / lazy / lazy.module”。

这是怎么了?


注意:我之前曾尝试在StackBlitz上重现该问题。但是,由于错误消息略有不同,因此具有误导性:

  

错误:未捕获(承诺):错误:在“ app / lazy / lazy.module”中找不到“ LazyModule”

事实证明(由于Cam Plimsoll),在该示例中我只是使用了错误的路径。

1 个答案:

答案 0 :(得分:0)

使用从sourceRoot开始的路径加载模块

this.loader.load('src/app/lazy/lazy.module#LazyModule').then(module=>{     
      //handle the logic of inserting your component
    });