【发布时间】:2016-09-08 11:36:56
【问题描述】:
我正在开发类似 CMS 的东西。我有带有模板的文章。文章是在后端添加的,我需要使用模板显示它们(当我渲染文章时,我知道要使用哪个模板)。由于会有 10 个模板,我试图找出存储模板的最佳方式以及如何根据加载的文章加载正确的模板。 我在考虑什么:
- 在后端存储有关模板的元数据并在需要时构建模板
- 在应用程序中存储模板(创建新模板时需要构建应用程序)
- 在后端存储原始模板
- 每个模板都有一个组件并动态加载它们(开销太大)
我正在寻找一种架构和技术解决方案。我很想选择选项 1,但不知道如何为文章组件构建模板。 我希望只有一个组件,它可以获取文章并加载(构建)所需的模板。
Angular2 RC5
编辑:
模板A:设置A的css规则(蓝色文本,标题大写),标题,段落,图像,段落和其他地方的链接(段落内) 模板B:css规则集B(红色文字,常规标题),标题,图片轮播,一段
{
"templateId": 1,
"title": "Article title",
"elements": [{
"text": "paragraph text"
}, {
"image": "http: //someurl.com"
}, {
"text": "another paragraph text"
}]
}
【问题讨论】:
-
一般来说,Angular2 希望模板与应用程序的其余部分一起编译和部署。模板会有不同的布局吗?还是会有行为差异? IMO 一个带有 ngSwitch 语句的单个组件,可以在其中一个文章模板之间交换是你最好的选择。
-
我为模板添加了一些示例。甚至可以基于我应该在模板中添加的元素数组来构建模板。我考虑过 ngSwitch 或 ngIf,我只是认为它会随着时间变得过于复杂。
-
我不确定您通过“要添加到模板中的元素数组”来问什么。但我会在这里发布我认为您的最佳选择的答案。
标签: angular