我有一个Aurelia应用程序,我正在尝试构建CMS组件。此组件将从服务器加载数据,此数据主要包含slug, title and content
个字段。
我的应用程序中还定义了几个全局组件,我希望能够在服务器中使用这些组件,因此当我提取该数据时,我的CMS组件能够转换/编译这些自定义元素。
一个例子是标签组件。我有定义了这种结构的制表符组件:
<tab-panel>
<tab title="First"></tab>
<tab title="Second"></tab>
</tab-panel>
CMS组件将包含content
属性,我用它来传递这样的字符串:'<tab-panel><tab title="First"></tab><tab title="Second"></tab></tab-panel>'
组件需要编译该字符串并在其视图中呈现它。我已经检查了enhance
API,但它不起作用,至少对我而言。任何其他动态编译/渲染自定义元素的建议??
提前多多感谢。
答案 0 :(得分:0)
我找到了解决方案。我使用了compose
元素和InlineViewStrategy,它运行良好,组件显示和绑定按预期工作。
答案 1 :(得分:0)
如果使用globalResources
全局注册自定义元素,您实际上可以使用TemplatingEngine
将内容动态插入DOM,然后在事后编译它。 This blog post详细介绍了如何做到这一点。
但是,我会将此作为最后的手段。在大多数情况下总是如此,在Aurelia有更好的办法。使用<compose>
元素是在Aurelia应用程序中动态呈现内容的绝佳方式,应始终是第一个调用端口。