背景
A是具有顶部和左侧导航的Angular shell。我们有多个应用程序B,C,D等使用我们想要加载到shell中的不同技术构建。
例如,B是Angular app,其功能模块将延迟加载到shell中,C是一个旧的Dojo应用程序,其功能将加载到shell中的iframe中,D是一个反应应用程序,其功能模块将被包装在Angular组件中并加载到shell中。
这些应用程序由不同的团队开发,托管在不同的域中,并且有自己的发布周期。 shell A的构建方式是,当应用程序想要发布更新时,不需要再次部署shell。
延迟加载工作流程
我正在尝试延迟加载由Angular应用B构建并在远程URL上托管到Angular shell A的功能模块。以下是我想要实现的工作流程:
问题:
shell A和app B都有相同的webpack配置。
然而,应用程序B的模块名称已经被破坏,如下所示,我想是一些模块被树震动删除了。
如果我可以在两个项目中生成未编码的输出,我将能够从应用B延迟加载功能模块到shell A,这更可靠。我可以设置为webpack中的选项吗?如果没有,webpack代码的哪一部分负责这一点,那么我可以看看并创建一个功能请求呢?
我使用Webpack版本2.4.1,Angular CLI 1.1.1和Angular 4.2.6。