我想动态确定Angular 2组件的HTML模板。那可能吗?我们如何在Angular中实现此功能?
我的目标是使用相同的代码库/组件,但基于服务器的某些配置/ URL的HTML不同?那可能吗?
答案 0 :(得分:1)
如果可能,我建议尝试其他方法来完成你想要做的事情。在我当前的项目中,我最初通过使用compileModuleAndAllComponentsAsync来实现这一点,基本上构建一个模块,一个组件,并在运行时将该模块编译并添加到项目中,然后使用ViewRef将它手动注入屏幕上的当前组件。
(有关详细信息,请访问here)
然而,这可能会很快失控。
这也阻止了我们使用webpack,因为webpack无法知道编译时需要哪些模板并将它们全部关联到一个组件。这使我们无法使用不好的Angular CLI。
而不是所有我建议尝试找到一种方法来做路由,并路由到不同的组件。这意味着您需要为每个可能的模板提供一个组件。
您也可以查看dynamic component loader,因为这是Angular 2支持的功能。