2017-03-04 16 views
0

在我的角度应用程序中,后端用户可以创建自定义模板。这些自定义模板需要在特定位置的角度应用程序中加载。我有一个自定义指令,它从CMS获取模板 (基于路由),并将其注入到我的角度应用程序中。如果我将它放入innerHTML组件将无法正确渲染。我需要componentFactoryResolvercompiler才能正确显示组件。是否有可能动态加载一个带有角度组件的html模板到AOT编译的角度应用程序?

上述解决方案不适用于编译AOT。有什么其他方式可以达到同样的效果吗?使用AOT?服务器端渲染是唯一的解决方案吗?

+0

如果您还需要什么东西对于这一点,这可能帮助: https://开头计算器.com/a/48827024/8107466 – Spitfire

回答

1

Angular不鼓励使用Compiler来创建动态模板。

Could/would/will code using COMPILER_PROVIDERS be supported by AOT?

但也许在未来将有可能与不含运费编译器,因为新视图引擎开放新功能。

属性

生成的代码依赖于极少数的内部。

  • 我们可以进行API公开和稳定的
  • 用户可以出货的NPM生成的工厂文件

    这使得在应用程序中调用ngc更快,因为它并不需要 编译的代码像Ionic这样的图书馆。

  • 用户可以实现自己的ViewEngine

    这种方式,我们可以删除Renderer抽象,因为我们在运行时编程已经通过ViewEngine

  • 用户可以创建模板的间接

    没有发货编译器

    例如,对于动态表单/ ....

    我们可能要为这一点,正确地计算索引的builder并且已经可以在测试中使用

  • 我们可以创建一个新的指令的转换一个ViewDefinition,例如(类似于Angular 1中的compile)。

    需要一些帮手映射来自新指数以原来的指数

详情请阅读Design Doc的视图引擎

+0

Thankyou。你说'Angular不鼓励使用Compiler来创建动态模板。' ?那么在这种情况下建议的解决方案是什么? – Amit

相关问题