我可以像plunker here中的其他人一样动态加载本地模块。但是我如何加载一个外部模块,让我们说另一个服务提供服务的另一个包js。在示例plunker中,src / app.ts具有:
constructor(private viewref: ViewContainerRef,
private resolver: ComponentFactoryResolver,
private loader: SystemJsNgModuleLoader,
private compiler: Compiler){
this.module = new ModuleNode();
//can I make this a non-local script reference somehow?
//like to http://example.net/external.module.bundle.js
this.module.modulePath = "src/dynamic.module#DynamicModule";
this.module.componentName = "TestComponent";
}
有没有办法实现这个目标?
编辑:为了澄清,情景是一组微服务(独立构建,部署等)正在制作spa。所以我的微服务想要从另一个微服务提供的bundle.js动态加载组件/模块。这就是我在编译时没有模块/包的原因。两个微服务之间唯一的合同是bundle文件的url。如果他们更新组件/模块,硬刷新应反映更改,而无需重新部署我的微服务。